我得到了以下代码:
Frequency = df['x [Hz]']
Spectrum = df['test_spec']
x = Spectrum
peaks, _ = find_peaks(x, distance=20)
plt.plot(peaks, x[peaks], "xr"); plt.plot(x); plt.legend(['distance'])
plt.show()
可变“频率”包含5-315 HZ的第三波段倍频程频谱的频率。“频谱”包含相关的噪声压力级别。现在我想找到光谱中的峰值。我需要的值是峰值所在的频率
问题是,绘图显示的是一个x轴,其步长为0,5,10,15,但我想要一个x轴刻度,其频率保存在变量“Frequency”中
希望你能帮助我
谢谢你的支持
find_peaks()的文档可能有点混乱,因为它调用其输入
x
,而在大多数情况下,输入将绘制在y轴上find_peaks()
不关心x轴,假设它与数组索引(0,1,2,...
)相同要绘制曲线,需要在x轴上使用
Frequency
绘制,在y轴上使用Spectrum
绘制。您可以通过将峰值用作两个阵列中的索引来可视化峰值:相关问题 更多 >
编程相关推荐