matlab信号频谱分析代码
时间: 2023-07-30 21:06:40 浏览: 112
以下是一个简单的MATLAB程序,用于计算一个信号的频谱:
```matlab
% 定义信号
Fs = 1000; % 采样率
t = 0:1/Fs:1-1/Fs; % 时间向量
f = 10; % 信号频率
x = sin(2*pi*f*t); % 信号
% 计算FFT
N = length(x); % 信号长度
X = fft(x); % FFT
Pxx = 1/(Fs*N) * abs(X).^2; % 信号功率谱密度
% 绘制结果
f = (0:N-1)*(Fs/N); % 频率向量
figure;
plot(f,Pxx)
title('单频正弦波信号的频谱')
xlabel('频率 (Hz)')
ylabel('功率谱密度')
```
这个程序首先定义了一个10 Hz的正弦波信号,并使用FFT计算了它的频谱。然后,它绘制了信号的功率谱密度,这是一个表示信号在不同频率上的能量分布的图形。
阅读全文