【问题标题】:PLT.PSD unable to match plt.psd vs actual output dataPLT.PSD 无法匹配 plt.psd 与实际输出数据
【发布时间】:2021-09-01 20:45:27
【问题描述】:

我实际上是在使用 plt.psd 函数尝试信号的 PSD。

Pxxf, psd_frequencies = plt.psd(phase,Fs=50,scale_by_freq= False,noverlap=250,NFFT=500,label = "3 minute",return_line=False)

其中相位是输入信号。

这是它的输出:

但是如果我要使用输出值来绘制它,它实际上并不起作用。这就是我所做的。

Pxxf, psd_frequencies = plt.psd(phase,Fs=50,scale_by_freq= False,noverlap=250,NFFT=500,label = "3 minute",return_line=False)

plt.cla()
plt.plot(psd_frequencies,Pxxf)

这是我得到的:

有什么想法为什么会有这样的差异?

【问题讨论】:

    标签: python matplotlib signals signal-processing


    【解决方案1】:

    matplotlib.pyplot.psd` 的文档中所述,

    对于绘图,功率被绘制为 10log10(Pxx) 的分贝,但返回 Pxx 本身。

    因此,要在手动绘制返回的数组时获得类似的结果,请尝试

    plt.plot(psd_frequencies,10*np.log10(Pxxf))
    

    【讨论】:

      猜你喜欢
      • 2017-10-09
      • 1970-01-01
      • 2015-04-15
      • 1970-01-01
      • 2021-11-24
      • 2021-08-22
      • 2016-07-18
      • 1970-01-01
      相关资源
      最近更新 更多