用matlab画出X=2*sin(2*pi*100*t)+3*cos(2*pi*500*t)+sin(2*pi*800*t)的幅度谱代码,并注释
时间: 2023-07-23 15:20:45 浏览: 111
数字图像处理_旋转与幅度谱(含MATLAB代码).doc
好的,以下是用 Matlab 画出 X=2*sin(2*pi*100*t)+3*cos(2*pi*500*t)+sin(2*pi*800*t)的幅度谱的代码:
```matlab
% 设置采样频率和采样时间
fs = 2000; % 采样频率为 2000 Hz
t = 0:1/fs:1; % 采样时间为 1s,每隔 1/fs 秒采样一次
% 计算信号 X
X = 2*sin(2*pi*100*t) + 3*cos(2*pi*500*t) + sin(2*pi*800*t);
% 计算 X 的幅度谱
N = length(X); % 信号的长度
Y = fft(X, N); % 对信号 X 进行快速傅里叶变换
P2 = abs(Y/N); % 计算双边频谱
P1 = P2(1:N/2+1); % 取单边频谱
P1(2:end-1) = 2*P1(2:end-1); % 乘以 2 得到单边幅度谱
% 绘制幅度谱图
f = fs*(0:(N/2))/N; % 计算频率轴上的值
plot(f, P1) % 绘制幅度谱图
title('X 的幅度谱')
xlabel('频率 (Hz)')
ylabel('幅度')
```
注释已经在代码中标出。如果有不懂的地方,可以随时问我。
阅读全文