This commit is contained in:
xaver 2020-07-14 17:21:38 +02:00
parent dbdaabcda2
commit 3f68ac8c1a

View File

@ -55,12 +55,29 @@ for idx, dataset in enumerate(datasets):
print(data.shape)
#plt.plot(time, data[0]) # V(t)
#plt.show()
nfft = 2**10
spec, freqs, times = specgram(data[0], Fs=1.0/(time[1]-time[0]), detrend='mean', NFFT=nfft, noverlap=nfft//10)
nfft = 50000
nfft1 = 5000
spec, freqs, times = specgram(data[0], Fs=1.0/(time[1]-time[0]), detrend='mean', NFFT=nfft, noverlap=nfft//2)
spec1, freqs1, times1 = specgram(data[0], Fs=1.0 / (time[1] - time[0]), detrend='mean', NFFT=nfft1, noverlap=nfft1 //2)
dbspec = 10.0*np.log10(spec) # in dB
dbspec1 = 10.0 * np.log10(spec1) # in dB
print(np.min(dbspec), np.max(dbspec))
plt.imshow(dbspec, cmap='jet', origin='lower', extent=(times[0], times[1], freqs[0], freqs[-1]), aspect='auto', vmin=-80, vmax=-30 )
#plt.imshow(dbspec, cmap='jet', origin='lower', extent=(times[0], times[-1], freqs[0], freqs[-1]), aspect='auto', vmin=-80, vmax=-30)
plt.imshow(dbspec1, cmap='jet', origin='lower', extent=(times1[0], times1[-1], freqs1[0], freqs1[-1]), aspect='auto', vmin=-80, vmax=-30 )
# interpolation, vmin, vmax
# plot decibel as function of frequency for one time slot: wieso auflösung von frequenzen schlechter wenn nfft hoch?
plt.show()
embed()
# wird frequenzauflösung besser bei höherem nfft, auch da bei nfft hoch df klein und somit hohe auflösung?
# zeitliche auflösung schlechter mit größerem nfft
#for k in range(len(times)):
#plt.plot(freqs, dbspec[:,100], label = '0')
#plt.plot(freqs1, dbspec1[:, 100], label = '1')
df = freqs[1] - freqs[0]
df1 = freqs1[1] - freqs1[0]
print(df)
print(df1)
plt.legend()
plt.show()
embed()