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