from sklearn.preprocessing import normalize from sklearn.preprocessing import StandardScaler, RobustScaler, MinMaxScaler ch_ids = range(32) i_stop = -1 i_start = 0 fs = 50 color = 'C0' array_msk = [] step = 1 data = data_tot[0, 0] if ch_ids == []: ch_ids = range(data.shape[1]) if i_stop == -1: i_stop = data.shape[0] # data2 = normalize(data) # data2 = standardize(data) scaler = StandardScaler() #MinMaxScaler() #RobustScaler() # scaler = scaler.fit(data) data2 = scaler.transform(data) data2 = np.copy(data) # offset = np.cumsum(4 * np.var(data2[:, ch_ids], axis=0)[:, np.newaxis]).T offset = np.cumsum(4 * np.var(data2[:, ch_ids], axis=0)[:, np.newaxis]).T plt.figure(1) plt.clf() plt.plot(np.arange(i_start, i_stop) / fs, data2[i_start:i_stop, ch_ids] + offset, color=color, lw=1) if array_msk != []: # highlight excluded channels plt.plot(np.arange(i_start, i_stop) / fs, data2[i_start:i_stop, array_msk] + offset[array_msk], color='C3', lw=1) plt.xlabel('Time (sec)') plt.yticks(offset[::step], range(0, len(ch_ids), step)) plt.ylim(0, offset[-1] + 4) # plt.title(f'raw data2 from array {arr_id}') plt.tight_layout() plt.draw() plt.show()