Update options
This commit is contained in:
parent
43e6ef27c8
commit
be7d153a9d
2 changed files with 39 additions and 26 deletions
|
|
@ -381,7 +381,7 @@ def unit_conversion(df, new_units, old_units, kind):
|
||||||
|
|
||||||
|
|
||||||
columns.append('cycle_time')
|
columns.append('cycle_time')
|
||||||
columns.append('run_time')
|
columns.append('time')
|
||||||
|
|
||||||
|
|
||||||
df.drop(['Record number', 'Relative Time(h:min:s.ms)', 'Real Time(h:min:s.ms)'], axis=1, inplace=True)
|
df.drop(['Record number', 'Relative Time(h:min:s.ms)', 'Real Time(h:min:s.ms)'], axis=1, inplace=True)
|
||||||
|
|
|
||||||
|
|
@ -16,8 +16,8 @@ def plot_gc(path, kind, options=None):
|
||||||
|
|
||||||
|
|
||||||
# Update options
|
# Update options
|
||||||
required_options = ['x_vals', 'y_vals', 'which_cycles', 'chg', 'dchg', 'colours', 'gradient']
|
required_options = ['x_vals', 'y_vals', 'which_cycles', 'chg', 'dchg', 'colours', 'differentiate_charge_discharge', 'gradient']
|
||||||
default_options = {'x_vals': 'capacity', 'y_vals': 'voltage', 'which_cycles': 'all', 'chg': True, 'dchg': True, 'colours': None, 'gradient': False}
|
default_options = {'x_vals': 'capacity', 'y_vals': 'voltage', 'which_cycles': 'all', 'chg': True, 'dchg': True, 'colours': None, 'differentiate_charge_discharge': True, 'gradient': False}
|
||||||
|
|
||||||
options = update_options(options=options, required_options=required_options, default_options=default_options)
|
options = update_options(options=options, required_options=required_options, default_options=default_options)
|
||||||
|
|
||||||
|
|
@ -26,10 +26,6 @@ def plot_gc(path, kind, options=None):
|
||||||
|
|
||||||
colours = generate_colours(cycles=cycles, options=options)
|
colours = generate_colours(cycles=cycles, options=options)
|
||||||
|
|
||||||
print(len(options['which_cycles']))
|
|
||||||
print(len(colours))
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for i, cycle in enumerate(cycles):
|
for i, cycle in enumerate(cycles):
|
||||||
if i in options['which_cycles']:
|
if i in options['which_cycles']:
|
||||||
|
|
@ -144,10 +140,10 @@ def prettify_gc_plot(fig, ax, options=None):
|
||||||
required_options = [
|
required_options = [
|
||||||
'columns',
|
'columns',
|
||||||
'xticks', 'yticks',
|
'xticks', 'yticks',
|
||||||
'show_major_ticks',
|
'show_major_ticks', 'show_minor_ticks',
|
||||||
'show_minor_ticks',
|
|
||||||
'xlim', 'ylim',
|
'xlim', 'ylim',
|
||||||
'hide_x_axis', 'hide_y_axis',
|
'hide_x_axis', 'hide_y_axis',
|
||||||
|
'positions',
|
||||||
'x_vals', 'y_vals',
|
'x_vals', 'y_vals',
|
||||||
'xlabel', 'ylabel',
|
'xlabel', 'ylabel',
|
||||||
'units', 'sizes',
|
'units', 'sizes',
|
||||||
|
|
@ -158,18 +154,13 @@ def prettify_gc_plot(fig, ax, options=None):
|
||||||
# Define the default options
|
# Define the default options
|
||||||
default_options = {
|
default_options = {
|
||||||
'columns': 1,
|
'columns': 1,
|
||||||
'xticks': None,
|
'xticks': None, 'yticks': None,
|
||||||
'yticks': None,
|
'show_major_ticks': [True, True, True, True], 'show_minor_ticks': [True, True, True, True],
|
||||||
'show_major_ticks': [True, True, True, True],
|
'xlim': None,'ylim': None,
|
||||||
'show_minor_ticks': [True, True, True, True],
|
'hide_x_axis': False, 'hide_y_axis': False,
|
||||||
'xlim': None,
|
'positions': {'xaxis': 'bottom', 'yaxis': 'left'},
|
||||||
'ylim': None,
|
'x_vals': 'specific_capacity', 'y_vals': 'voltage',
|
||||||
'hide_x_axis': False,
|
'xlabel': None, 'ylabel': None,
|
||||||
'hide_y_axis': False,
|
|
||||||
'x_vals': 'specific_capacity',
|
|
||||||
'y_vals': 'voltage',
|
|
||||||
'xlabel': None,
|
|
||||||
'ylabel': None,
|
|
||||||
'units': None,
|
'units': None,
|
||||||
'sizes': None,
|
'sizes': None,
|
||||||
'title': None
|
'title': None
|
||||||
|
|
@ -222,8 +213,6 @@ def prettify_gc_plot(fig, ax, options=None):
|
||||||
|
|
||||||
|
|
||||||
if not options['xlabel']:
|
if not options['xlabel']:
|
||||||
print(options['x_vals'])
|
|
||||||
print(options['units'])
|
|
||||||
options['xlabel'] = prettify_labels(options['x_vals']) + ' [{}]'.format(options['units'][options['x_vals']])
|
options['xlabel'] = prettify_labels(options['x_vals']) + ' [{}]'.format(options['units'][options['x_vals']])
|
||||||
|
|
||||||
else:
|
else:
|
||||||
|
|
@ -250,13 +239,21 @@ def prettify_gc_plot(fig, ax, options=None):
|
||||||
|
|
||||||
# DEFINE AND SET TICK DISTANCES
|
# DEFINE AND SET TICK DISTANCES
|
||||||
|
|
||||||
|
from . import unit_tables
|
||||||
|
|
||||||
|
# Define default ticks and scale to desired units
|
||||||
default_ticks = {
|
default_ticks = {
|
||||||
'specific_capacity': [100, 50],
|
'specific_capacity': [100 * (unit_tables.capacity()['mAh'].loc[options['units']['capacity']] / unit_tables.mass()['g'].loc[options['units']['mass']]), 50 * (unit_tables.capacity()['mAh'].loc[options['units']['capacity']] / unit_tables.mass()['g'].loc[options['units']['mass']])],
|
||||||
'capacity': [0.1, 0.05],
|
'capacity': [0.1 * (unit_tables.capacity()['mAh'].loc[options['units']['capacity']]), 0.05 * (unit_tables.capacity()['mAh'].loc[options['units']['capacity']])],
|
||||||
'voltage': [0.5, 0.25]
|
'voltage': [0.5 * (unit_tables.voltage()['V'].loc[options['units']['voltage']]), 0.25 * (unit_tables.voltage()['V'].loc[options['units']['voltage']])],
|
||||||
|
'time': [10 * (unit_tables.time()['h'].loc[options['units']['time']]), 5 * (unit_tables.time()['h'].loc[options['units']['time']])]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if options['positions']['yaxis'] == 'right':
|
||||||
|
ax.yaxis.set_label_position("right")
|
||||||
|
ax.yaxis.tick_right()
|
||||||
|
|
||||||
|
|
||||||
# Set default tick distances for x-axis if not specified
|
# Set default tick distances for x-axis if not specified
|
||||||
if not options['xticks']:
|
if not options['xticks']:
|
||||||
|
|
@ -290,11 +287,23 @@ def prettify_gc_plot(fig, ax, options=None):
|
||||||
ax.yaxis.set_minor_locator(MultipleLocator(minor_ytick))
|
ax.yaxis.set_minor_locator(MultipleLocator(minor_ytick))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# SET FONTSIZE OF TICK LABELS
|
# SET FONTSIZE OF TICK LABELS
|
||||||
|
|
||||||
plt.xticks(fontsize=options['sizes']['tick_labels'])
|
plt.xticks(fontsize=options['sizes']['tick_labels'])
|
||||||
plt.yticks(fontsize=options['sizes']['tick_labels'])
|
plt.yticks(fontsize=options['sizes']['tick_labels'])
|
||||||
|
|
||||||
|
##################################################################
|
||||||
|
########################## AXES LIMITS ###########################
|
||||||
|
##################################################################
|
||||||
|
|
||||||
|
if options['xlim']:
|
||||||
|
plt.xlim(options['xlim'])
|
||||||
|
|
||||||
|
if options['ylim']:
|
||||||
|
plt.ylim(options['ylim'])
|
||||||
|
|
||||||
##################################################################
|
##################################################################
|
||||||
############################# TITLE ##############################
|
############################# TITLE ##############################
|
||||||
##################################################################
|
##################################################################
|
||||||
|
|
@ -319,6 +328,7 @@ def prettify_labels(label):
|
||||||
'voltage': 'Voltage',
|
'voltage': 'Voltage',
|
||||||
'current': 'Current',
|
'current': 'Current',
|
||||||
'energy': 'Energy',
|
'energy': 'Energy',
|
||||||
|
'time': 'Time'
|
||||||
}
|
}
|
||||||
|
|
||||||
return labels_dict[label]
|
return labels_dict[label]
|
||||||
|
|
@ -341,6 +351,9 @@ def generate_colours(cycles, options):
|
||||||
charge_colour = (40/255, 70/255, 75/255) # Dark Slate Gray #28464B, coolors.co
|
charge_colour = (40/255, 70/255, 75/255) # Dark Slate Gray #28464B, coolors.co
|
||||||
discharge_colour = (239/255, 160/255, 11/255) # Marigold #EFA00B, coolors.co
|
discharge_colour = (239/255, 160/255, 11/255) # Marigold #EFA00B, coolors.co
|
||||||
|
|
||||||
|
if not options['differentiate_charge_discharge']:
|
||||||
|
discharge_colour = charge_colour
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# If gradient is enabled, find start and end points for each colour
|
# If gradient is enabled, find start and end points for each colour
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue