matlab中怎么画函数的相位谱
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab中怎么画函数的相位谱相关的知识,希望对你有一定的参考价值。
在MATLAB中怎么画sin(x)的频谱图,相位图?
参考技术A 频谱图很好画啊,用abs(fft(sin(x))),再用plot就可以了画相位图时,fft做完是复数,用atan(虚部/实部)就可以了,不要用abs命令 参考技术B Adata = fft(Tdata);
phase = (angle(Adata)*180/pi); 参考技术C Adata
=
fft(Tdata);
phase
=
(angle(Adata)*180/pi); 参考技术D 用fft函数
以下是matlab help的例子,你看看吧
t = 0:0.001:0.6;
x = sin(2*pi*50*t)+sin(2*pi*120*t);
y = x + 2*randn(size(t));
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)'
Y = fft(y,512);
Pyy = Y.* conj(Y) / 512;
f = 1000*(0:256)/512;
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency (Hz)')
Matlab绘制幅值谱和相位谱
1. 对于直接给出频响函数的情况
这里以滑动平均的频响函数作为例子,滑动窗口为[0, 4]。
上式中M2=4。
>> w=0:0.001:2*pi;
>> h1=1-exp(-j*w*5);
>> h2=1-exp(-j*w);
>> h=0.2*h1./h2; % 注意这里是点除
>> plot(w/pi,abs(h)); % 横轴以pi为单位
>> plot(w/pi,angle(h));
以上是关于matlab中怎么画函数的相位谱的主要内容,如果未能解决你的问题,请参考以下文章
用matlab进行傅里叶变换。傅里叶变换得到的相位谱、幅值谱有啥用?怎么分析?