key = 'b1c1' # also for b132 b2c25 ...
cycle = 2
plt.figure(figsize = (10, 10))
diff = np.diff(train[key]['cycles'][f'{cycle}']['I'] < -1.1 / 50)
indices = np.where(diff != 0)[0]
start_ind, end_ind = indices[0] + 1, indices[1]
print(start_ind, end_ind, len(train[key]['cycles'][f'{cycle}']['I']))
plt.scatter(train[key]['cycles'][f'{cycle}']['Qd'][start_ind:end_ind], train[key]['cycles'][f'{cycle}']['V'][start_ind:end_ind], s = 0.1, color = 'blue', label = 'original')
plt.scatter(train[key]['cycles'][f'{cycle}']['Qdlin'], np.linspace(3.6, 2.0, 1000), s = 0.1, color = 'red', label = 'spline')
plt.legend()