matlab的ezplot函数问题 20
symst;x=10*cos(pi*2000*t+pi/6);ezplot(x)按理说应该输出一个周期很小的cos图形啊?为什么输出如图?...
syms t;x=10*cos(pi*2000*t+pi/6);ezplot(x)按理说应该输出一个周期很小的cos图形啊?为什么输出如图?
展开
1个回答
展开全部
关于ezplot的问题,我进行了下面的测试:
首先,打开ezplot的帮助,在命令窗口中输入:doc ezplot,如下图所示:
注意到其中提示:ezplot is not recommended. use fplot instead.
下面比较ezplot 与 fplot
代码如下:
close all;
figure;
subplot(2,1,1);
ezplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-3,2*pi*1e-3]);
subplot(2,1,2);
fplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-3,2*pi*1e-3]);
figure;
subplot(2,1,1);
ezplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-2,2*pi*1e-2]);
subplot(2,1,2);
fplot(@(t)10.*cos(pi.*2000.*t+pi./6),[-2*pi*1e-2,2*pi*1e-2]);
得到下面两个图:
可以发现,fplot画出的图形是我们预期的,而ezplot在区间比较大时,图形是错误的,我想这正是帮助中提示使用flpot的原因。如果不限制区间,例如代码 ezplot(x),默认是在[-2pi,2pi]上画图,区间更大,所以也会出错,即看不到周期很小的cos图像。
下面是flot的帮助截图:
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询