如何使用频谱图和/或周期图绘制PSD?

时间:2013-09-30 14:25:50

标签: matlab accelerometer frequency spectrogram

我有< 1,000,000x1 double>来自加速度计的m / s ^ 2数据的矢量。我想创建这个数据的功率谱密度图(功率/ hz对频率)。 我可以通过频谱图运行矢量来查找频率,但我可能会错误地使用Windows。我得到一个< 131073x8复数double>返回,但我不知道它的内容是什么。 我可以简单地使用矢量上的函数周期图来绘制功率/ hz与频率的关系吗?我试过,matlab返回一个空白的情节。

非常感谢对此的支持.. 谢谢, 亚历

1 个答案:

答案 0 :(得分:4)

如果您只想要功率谱密度图,可以运行

periodogram(x)

您可以获得归一化频率上的功率谱密度(以dB为单位)的图表。如果希望密度超过实际频率(以Hz为单位),则需要指定数据的采样率。语法是

periodogram(x, [], [], Fs)

其中Fs是采样频率(以Hz为单位)。然后,您获得一个水平轴从0到Fs / 2(奈奎斯特频率)的图。

[]给出的两个参数可用于指定周期图方法的窗口长度和用于基础FFT的数据点数。您可以使用这些,尤其是窗口长度,以便调节频谱的频率分辨率与估算功率谱密度的精度之间的权衡。

这些语法都不会periodogram返回任何输出。但是,您可以使用语法

[P, f] = periodogram(x, [], [], fs);

返回P中功率谱密度的估计值和f中的相应频率(以Hz为单位)。通过这种方式,您可以使用

生成类似于periodogram生成的无输出的图
semilogy(f, P)

即。使用垂直轴的对数刻度绘制P超过f