请教!想用STFT来将振动信号(信号长度我取为1024,采样频率12KHZ)转换成时频图,但是运行的时候报出如下错误。debug的时候显示在plt.pcolormesh(t, f, np.abs(zxx))处报出的错误。.我是按照网上stft处理振动信号的代码设置的,不知道问题出在了哪里?哪位好心的帮忙看看,感激不尽!
for batch_idx, data in enumerate(test_loader, 0):
sample_before, target = data
f, t, zxx = signal.stft(sample_before, fs = 12000, nperseg=512)
plt.pcolormesh(t, f, np.abs(zxx))
plt.colorbar()
plt.title('STFT Magnitude')
plt.ylabel('Frequency [Hz]')
plt.xlabel('Time [sec]')
plt.tight_layout()
plt.show()
Traceback (most recent call last):
File "F:/PyCharmProjects/多元融合故障诊断/STFT.py", line 86, in
plt.pcolormesh(t, f, np.abs(zxx))
File "D:\Anaconda\envs\kr243\lib\site-packages\matplotlib\pyplot.py", line 2804, in pcolormesh
**({"data": data} if data is not None else {}), **kwargs)
File "D:\Anaconda\envs\kr243\lib\site-packages\matplotlib_init_.py", line 1447, in inner
return func(ax, *map(sanitize_sequence, args), **kwargs)
File "D:\Anaconda\envs\kr243\lib\site-packages\matplotlib\axes_axes.py", line 6093, in pcolormesh
shading=shading, kwargs=kwargs)
File "D:\Anaconda\envs\kr243\lib\site-packages\matplotlib\axes_axes.py", line 5585, in _pcolorargs
nrows, ncols = C.shape
ValueError: too many values to unpack (expected 2)
没有成功,只是我不会,但是我会的人应该觉得很简单ba
让我的代码顺利运行!