From fdf067b6badebac0d2deea7e6711c31d3f45d6a5 Mon Sep 17 00:00:00 2001
From: ferrari <maxence.ferrari@gmail.com>
Date: Thu, 11 Mar 2021 14:16:35 +0100
Subject: [PATCH] Fix visual glitches

---
 ipi_extract.py | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

diff --git a/ipi_extract.py b/ipi_extract.py
index 05f57b8..c188254 100644
--- a/ipi_extract.py
+++ b/ipi_extract.py
@@ -416,7 +416,8 @@ class Callback(object):
         self.ind_b.hovercolor = 'lime' if self.ind_select else '0.95'
         if self.ind_select:
             self.df[self.offset[self.curr_ind[self.curr], 0]]['ind_number'] = ''
-        self.ind_b.label.set_text(f'Current individual:\n')
+        self.ind_b.label.set_text(f'Current individual:\n'
+                                  f'{self.df[self.offset[self.curr_ind[self.curr], 0]]["ind_number"]}')
         plt.draw()
 
     def key_pressed(self, event):
@@ -458,14 +459,18 @@ class Callback(object):
         self.view_ax[self.curr][1].set_ylim(0, max(self.view_ax[self.curr][1].get_ylim()[1]-1e3,1e3))
         plt.draw()
 
+    def _update_spectrogram(self, num):
+        click = self.view_data[num][0][0].get_ydata()
+        spec = np.flipud(20*np.log10(plt.mlab.specgram(click, Fs=self.sr, NFFT=self.nfft, noverlap=self.nfft-1)[0]))
+        self.view_data[num][1][0].set_data(spec)
+        self.view_data[num][1][0].set_clim(spec.max()-SPSC, spec.max())
+
     def increase_res(self, event):
         if self.nfft > int(10e-3*self.sr):
             return
-        click = self.view_data[self.curr][0][0].get_ydata()
         self.nfft *= 2
-        spec = np.flipud(20*np.log10(plt.mlab.specgram(click, Fs=self.sr, NFFT=self.nfft, noverlap=self.nfft-1)[0]))
-        self.view_data[self.curr][1][0].set_data(spec)
-        self.view_data[self.curr][1][0].set_clim(spec.max()-SPSC, spec.max())
+        for i in range(3):
+            self._update_spectrogram(i)
         if self.nfft > int(10e-3*self.sr):
             self.spec_b['plus_res'].label.set_text('Can\'t go\nhigher')
         else:
@@ -476,11 +481,9 @@ class Callback(object):
     def decrease_res(self, event):
         if self.nfft <8:
             return
-        click = self.view_data[self.curr][0][0].get_ydata()
         self.nfft //= 2
-        spec = np.flipud(20*np.log10(plt.mlab.specgram(click, Fs=self.sr, NFFT=self.nfft, noverlap=self.nfft-1)[0]))
-        self.view_data[self.curr][1][0].set_data(spec)
-        self.view_data[self.curr][1][0].set_clim(spec.max()-SPSC, spec.max())
+        for i in range(3):
+            self._update_spectrogram(i)
         self.spec_b['plus_res'].label.set_text(f'{self.nfft*2}\nbins')
         if self.nfft <8:
             self.spec_b['minus_res'].label.set_text('Can\'t go\nlower')
-- 
GitLab