使用Matlab,以对数刻度(频率范围:10 ^ -1〜10 ^ 2)绘制频率响应(幅度与频率,相位与频率)和频率。
这是我目前的代码:
w = linspace(10^-1,10^2,1);
p = atan((3*w)/4) - atan((3*w)/(4-10000*w^2));
magnitude = sqrt((16+9*w^2)/((10^8*w^4)-7.99e4*w^2+16));
T(w) = (16+9*w^2)/((10^8*w^4)-7.99e4*w^2+16);
subplot (2,1,1)
plot(magnitude,T,'*')
ylabel('Magnitude')
subplot(2,1,2)
plot(p,T,'*')
xlabel('Frequency')
ylabel('Phase')
如果有人可以提供帮助,为什么它只输出点而不是行呢!
答案 0 :(得分:1)
调用plot(magnitude,T,'*')
时,请在第3个参数中指定要使用的标记。 *
表示点,如果要代替一条线,请使用-
,或者如果要通过线连接点,请使用*-
。
plot(magnitude,T,'-')