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单位的平方。
一个函数就可以了psd(x);然后就会绘制出信号x的功率谱密度。
不知道你什么意思?频率咋那么小?你不是做了归一化了吗?最大不就2Pi?