Created new in-figure linked SVGs with clearer naming scheme. Removed outdated image components.
104 lines
4.7 KiB
Python
104 lines
4.7 KiB
Python
import matplotlib.pyplot as plt
|
|
|
|
plt.rcParams['text.usetex'] = True
|
|
plt.rcParams['font.family'] = 'computer modern roman'
|
|
plt.rcParams['mathtext.fontset'] = 'cm'
|
|
plt.rcParams['mathtext.default'] = 'regular'
|
|
plt.rcParams['svg.fonttype'] = 'path'
|
|
plt.rc('text.latex', preamble=r'\usepackage{amsmath}')
|
|
|
|
# Settings:
|
|
titles_fontsize = 50
|
|
titles_figsize = (4, 2.5)
|
|
elements_fontsize = 80
|
|
elements_figsize = (3, 3)
|
|
lines_fontsize = 80
|
|
lines_figsize = (3, 3)
|
|
show_figs = True
|
|
grid_props = dict(left=0, right=1, top=1, bottom=0)
|
|
|
|
fig_props = {
|
|
'facecolor': 'none',
|
|
'edgecolor': 'none',
|
|
'frameon': False,
|
|
}
|
|
|
|
ax_props = {
|
|
'facecolor': 'none',
|
|
'frame_on': False,
|
|
}
|
|
|
|
text_props = {
|
|
'color': 'k',
|
|
'x': 0.5,
|
|
'y': 0.5,
|
|
'ha': 'center',
|
|
'va': 'center',
|
|
}
|
|
|
|
# Targets:
|
|
texts = {
|
|
# # TITLES (NEURONAL CIRCUIT):
|
|
# 'neuron_titles_tympanum': ('Tympanal\nMembrane', titles_fontsize, titles_figsize),
|
|
# 'neuron_titles_receptors': ('Receptor\nNeurons', titles_fontsize, titles_figsize),
|
|
# 'neuron_titles_interneurons': ('Local\nInterneurons', titles_fontsize, titles_figsize),
|
|
# 'neuron_titles_ascending': ('Ascending\nNeurons', titles_fontsize, titles_figsize),
|
|
# 'neuron_titles_brain': ('Central\nBrain', titles_fontsize, titles_figsize),
|
|
|
|
# # TITLES (MODEL CIRCUIT):
|
|
# 'model_titles_bandpass': ('Bandpass\nFiltering', titles_fontsize, titles_figsize),
|
|
# 'model_titles_envelope': ('Envelope\nExtraction', titles_fontsize, titles_figsize),
|
|
# 'model_titles_logarithm': ('Logarithmic\nCompression', titles_fontsize, titles_figsize),
|
|
# 'model_titles_adaptation': ('Intensity\nAdaptation', titles_fontsize, titles_figsize),
|
|
# 'model_titles_convolution': ('Convolutional\nFiltering', titles_fontsize, titles_figsize),
|
|
# 'model_titles_nonlinear': ('Threshold\nNonlinearity', titles_fontsize, titles_figsize),
|
|
# 'model_titles_integration': ('Temporal\nAveraging', titles_fontsize, titles_figsize),
|
|
# 'model_titles_readout': ('Weighted\nReadout', titles_fontsize, titles_figsize),
|
|
|
|
# # ELEMENT LABELS (MODEL CIRCUIT):
|
|
# 'model_elements_filt': (r'$x_{\text{filt}}$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_env': (r'$x_{\text{env}}$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_log': (r'$x_{\text{dB}}$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_adapt': (r'$x_{\text{adapt}}$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_c1': (r'$c_1$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_c2': (r'$c_2$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_c3': (r'$c_3$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_b1': (r'$b_1$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_b2': (r'$b_2$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_b3': (r'$b_3$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_f1': (r'$f_1$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_f2': (r'$f_2$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_f3': (r'$f_3$', elements_fontsize, elements_figsize),
|
|
# 'model_elements_out': (r'$\hat{y}$', elements_fontsize, elements_figsize),
|
|
|
|
# LINE LABELS (MODEL CIRCUIT):
|
|
'model_lines_env': (r'$\lvert\cdot\lvert,h_{\text{LP}}$', lines_fontsize, lines_figsize),
|
|
'model_lines_log': (r'$\text{log}$', lines_fontsize, lines_figsize),
|
|
'model_lines_hp': (r'$h_{\text{HP}}$', lines_fontsize, lines_figsize),
|
|
'model_lines_k1': (r'$k_1$', lines_fontsize, lines_figsize),
|
|
'model_lines_k2': (r'$k_2$', lines_fontsize, lines_figsize),
|
|
'model_lines_k3': (r'$k_3$', lines_fontsize, lines_figsize),
|
|
'model_lines_t1': (r'$\Theta_1$', lines_fontsize, lines_figsize),
|
|
'model_lines_t2': (r'$\Theta_2$', lines_fontsize, lines_figsize),
|
|
'model_lines_t3': (r'$\Theta_3$', lines_fontsize, lines_figsize),
|
|
# 'model_lines_H1': (r'$H(c_1-\Theta_1)$', lines_fontsize, lines_figsize),
|
|
# 'model_lines_H2': (r'$H(c_2-\Theta_2)$', lines_fontsize, lines_figsize),
|
|
# 'model_lines_H3': (r'$H(c_3-\Theta_3)$', lines_fontsize, lines_figsize),
|
|
'model_lines_lp': (r'$h_{\text{LP}}$', lines_fontsize, lines_figsize),
|
|
'model_lines_w1': (r'$\omega_1$', lines_fontsize, lines_figsize),
|
|
'model_lines_w2': (r'$\omega_2$', lines_fontsize, lines_figsize),
|
|
'model_lines_w3': (r'$\omega_3$', lines_fontsize, lines_figsize),
|
|
}
|
|
|
|
# Save each target string:
|
|
for name, (text, fs, size) in texts.items():
|
|
fig, ax = plt.subplots(figsize=size, gridspec_kw=grid_props, **fig_props)
|
|
ax.set(**ax_props)
|
|
ax.axis('off')
|
|
ax.text(s=text, fontsize=fs, **text_props)
|
|
fig.savefig(f'../figures/{name}_text.svg', dpi=300,
|
|
bbox_inches='tight', pad_inches=0)
|
|
if show_figs:
|
|
plt.show()
|
|
plt.close(fig)
|