绘制傅立叶变换的幅度和相位

时间:2018-08-29 15:14:04

标签: matlab plot

我正在尝试绘制傅立叶变换的幅度和相位表示。

这是我到目前为止所拥有的:

syms t w
y(t) = 2*cos(2000*pi*t)*cos(2*pi*(10^6)*t);
x(w) = fourier(y);
h = abs(x);
a = angle(x)
figure, fplot(h)
figure, fplot(a)

但是当我画图时,我在0处只有两条直线。我知道傅立叶变换会返回狄拉克三角函数。无论如何,我可以在matlab中绘制这些函数吗?

1 个答案:

答案 0 :(得分:0)

下面是一个类似的示例,它明确定义了向量t

t = linspace(0,1,82);
y = 2*cos(2000*pi*t).*cos(2*pi*(10^6)*t);
x = fft(y);
h = abs(x);
a = angle(x);

figure, plot(t, x)
figure, plot(t, a)

我有一种预感,就是您的t向量以仅产生“某些整数”值乘以pi的方式递增。这将导致-11的值从以弧度评估的cos函数中返回。

上面的代码产生以下内容:

enter image description here enter image description here