我正尝试使用Matlab绘制正弦波的相位谱。下面是我的代码,由于声望不足,我无法附上图表。虽然幅度谱看起来不错,但相位谱似乎不正确,就像一种噪音。您有什么想法吗?
clear all;
fs=8000;
l=1000;
t=1/fs*(1:l);
x1=sin(2*pi()*1000*t);
spec_x1=fft(x1,1000);
magnitude=2*abs(spec_x1)/l;
phase=angle(spec_x1)*180/pi;
figure
plot(fs/2*linspace(0,1,500),magnitude(1:500));
title('Magnitude spectrum');
xlabel('F[Hz]');
ylabel('Magnitude');
figure
plot(fs/2*linspace(0,1,500),phase(1:500));
title('Phase spectrum');
xlabel('F[Hz]');
ylabel('Phase [degrees]');