作业帮 > 综合 > 作业

matlab怎么绘制出功率谱

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/28 07:51:15
matlab怎么绘制出功率谱
t=a(:,1);%%%%t是时间;
yt=a(:,2);%%%%yt是数据;
dt=t(2)-t(1);%%%%dt是点距;
lt=length(t);%%%%是数据的长度;
f0=2*pi/lt;%%%%f0是基频;
fy=fft(yt);%%%%fy是fft变换得到的波谱;
for i=1:1:lt
f(i)=f0*(i-1);%%%%f是频率;
P(i)=abs(fy(i))^2;%%%P是功率谱;
end
plot(f,P); %%%%画图;
频率咋那么小
t=a(:,1);%%%%t是时间;
yt=a(:,2);%%%%yt是数据;
dt=t(2)-t(1);%%%%dt是点距;
lt=length(t);%%%%是数据的长度;
f0=2*pi/(lt*dt);%%%%f0是基频;
fy=fft(yt);%%%%fy是fft变换得到的波谱;
for i=1:1:lt
f(i)=f0*(i-1);%%%%f是频率;
P(i)=abs(fy(i))^2;%%%P是功率谱;
end
plot(f,P); %%%%画图;
f的单位是秒分之一.就是频率.
P是没有单位的,就是振幅大小.如果有那是yt单位的平方.
再问: 那我x轴和y轴怎么标注
再答: xlabel('x/s^-1');ylabel(‘y/振幅');