PDA

查看完整版本 : [求助]有段采集的数据,怎么在matlab下看一下其频谱特性


sjszhb
2008-06-17, 22:34
有段采集的数据,怎么在matlab下看一下其频谱特性
:( 段采集的数据,想在matlab下看一下其频谱特性,
自己写了段FFT的代码
data=fscanf(fid,'%f\n');
fclose(fid);
n1=length(data);
fs=n1;
k = n1;
for i=1:n1
y(i)=data(i);
end
sum = n1;
k = 512
Y = fft(y,k);
Pyy = Y.* conj(Y) / k;
f = 1000*(0:256)/k;

plot(f,Pyy)
看了一下曲线,只在初始0处幅值很高,其他地方几乎为0,这样不对呀,应该在很多频段
幅值很高。而且发现怎么调整k都不变化,请问,怎么来看频谱特性呀。谢谢。可以的话最
好给我留言或者[email protected]

maizi816
2008-06-19, 07:08
试试fftshift,我也碰到这个问题了。用fft, 只在频率为0和最高频率的地方幅值很高,换了fftshift,就可以得到想要得了。你可以查查fft和fftshift的区别,就明白了。

nickgang
2008-06-24, 21:08
是不是采样的频率太高了导致的啊?适当的降低采样频率看看~~ 我也刚学这东西2天 ~如果所错了见谅:cool:

songzy41
2008-07-03, 20:28
直流分量太大,消除直流分量后再做FFT分析。