Skip to content
Snippets Groups Projects
Commit da43058f authored by ferrari's avatar ferrari
Browse files

fix yscale

parent d13ecd0e
No related branches found
No related tags found
No related merge requests found
......@@ -149,28 +149,56 @@ def main(args):
spec = spec_ax.specgram(pointers['clicks'].mean(0), Fs=sr, NFFT=128, noverlap=127, cmap='jet')[-1]
spec.set_clim(spec.get_clim()[1] - 80, spec.get_clim()[1])
pointers['spectro_mode'] = False
pointers['abs_mode'] = False
def update_spectro():
if pointers['spectro_mode']:
spectro = np.flipud(np.mean([10 * np.log10(
plt.mlab.specgram(click, Fs=sr, NFFT=128, noverlap=127)[0]) for click in pointers['clicks']],0))
else:
spectro = np.flipud(10 * np.log10(
plt.mlab.specgram(pointers['clicks'].mean(0), Fs=sr, NFFT=128, noverlap=127)[0]))
spec.set_data(spectro)
spec.set_clim(spectro.max() - 80, spectro.max())
def change_graph(label):
if label == 'signal':
if pointers['abs_mode']:
im.set_data(np.abs(pointers['clicks'].T))
im.set_clim(0, pointers['clicks'].max())
else:
im.set_data(pointers['clicks'].T)
im.set_clim(pointers['clicks'].min(), pointers['clicks'].max())
im.set_extent([0, len(pointers['clicks']), -10, 10])
raster.set_xlim(0, len(pointers['clicks']))
line.set_xdata(pointers['clicks'].sum(0))
if pointers['abs_mode']:
s_sum = np.abs(pointers['clicks'].sum(0))
else:
s_sum = pointers['clicks'].sum(0)
line.set_xdata(s_sum)
line.set_ydata(np.arange(int(-sr*10e-3), int(sr*10e-3))/sr*1e3)
mean_raster.set_xlim(s_sum.min(), s_sum.max())
mean_raster.set_ylim(-10, 10)
elif label == 'autocorr':
im.set_data(pointers['autocorr'].T)
im.set_clim(pointers['autocorr'].min(), pointers['autocorr'].max())
im.set_extent([0, len(pointers['clicks']), 0, 10])
line.set_xdata(pointers['autocorr'].sum(0))
raster.set_xlim(0, len(pointers['clicks']))
s_sum = pointers['autocorr'].sum(0)
line.set_xdata(s_sum)
line.set_ydata(np.arange(0, int(sr*10e-3))/sr*1e3)
mean_raster.set_xlim(s_sum.min(), s_sum.max())
mean_raster.set_ylim(0, 10)
elif label == 'cepstrum':
im.set_data(pointers['cepstrum'].T)
im.set_clim(0, 2*np.nanstd(pointers['cepstrum']))
im.set_extent([0, len(pointers['clicks']), 0, 10])
line.set_xdata(np.nansum(pointers['cepstrum'], 0))
raster.set_xlim(0, len(pointers['clicks']))
s_sum = np.nansum(pointers['cepstrum'], 0)
line.set_xdata(s_sum)
line.set_ydata(np.arange(0, int(sr*10e-3))/sr*1e3)
mean_raster.set_xlim(0, 2*s_sum.std())
mean_raster.set_ylim(0, 10)
plt.draw()
......@@ -218,16 +246,36 @@ def main(args):
pointers['autocorr'] = all_autocorr[pointers['mask']]
pointers['cepstrum'] = all_cepstrum[pointers['mask']]
scat.set_offsets(np.vstack((fine_pos_glob[pointers['mask']]/sr, song[fine_pos_glob[pointers['mask']]])).T)
spectro = np.flipud(20 * np.log10(
plt.mlab.specgram(pointers['clicks'].mean(0), Fs=sr, NFFT=128, noverlap=127)[0]))
spec.set_data(spectro)
spec.set_clim(spectro.max() - 80, spectro.max())
update_spectro()
change_graph(r_button.value_selected)
cur = Cursor(hist_ax, horizOn=False, vertOn=True, useblit=True, c='r')
cur.connect_event('button_press_event', onclick_down)
cur.connect_event('button_release_event', onclick_up)
rabs_b_ax = plt.subplot(gs[-1:, -4:-2])
rabs_b = Button(rabs_b_ax, 'Signal\nin abs')
smean_b_ax = plt.subplot(gs[-1:, -2:])
smean_b = Button(smean_b_ax, 'Mean spectro\non magnitude')
def raster_abs(event):
pointers['abs_mode'] = not pointers['abs_mode']
rabs_b.label.set_text('Signal\nnot in abs' if pointers['abs_mode']
else 'Signal\nin abs')
if r_button.value_selected == 'signal':
change_graph('signal')
def spec_mean(event):
pointers['spectro_mode'] = not pointers['spectro_mode']
smean_b.label.set_text('Mean spectro\non signal' if pointers['spectro_mode']
else 'Mean spectro\non magnitude')
update_spectro()
plt.draw()
rabs_b.on_clicked(raster_abs)
smean_b.on_clicked(spec_mean)
plt.draw()
plt.pause(0.2)
fig.set_constrained_layout(False)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment