1

是否有将波形表示为频谱图的一系列数字的 Matlab 代码?

每个样本代表的时间间隔是相同的,理想情况下,这也可以用于轴刻度。

http://www.davegrossman.net/gould/media/spectrum-devocalized.jpg

例如:

spec({1 2 3 2 1 2 3 2}, 0.1 seconds)

或者

spec(my_data.txt, 10 Hz)

ETC...

4

2 回答 2

4

如果您有信号处理工具箱,那么您可以使用该spectrogram()功能。例如:

T = 0:0.001:2;
X = chirp(T,100,1,200,'q');
spectrogram(X,128,120,128,1E3); 

(示例取自该文档页面。)

数值参数分别是窗口长度、重叠长度、FFT 长度和采样频率。

于 2012-03-15T20:52:58.040 回答
0

如果您查看 tftb 工具箱,tfrspwv 是一个非常复杂且精确的频谱图代码,并且在线 tfrspwv.m 代码中有一个运行脚本示例,用于在 Matlab 中制作频谱图。

于 2015-07-13T04:29:56.733 回答