怎样用matlab画y=1/cos(x)的图?

我一直在画y1=2/cosx1 和y2=1.5/sinx2(x1=0:atan(3/4) x2=atan(3/4):pi/2的图,画的一直是直线,求求帮忙了,感激不尽。。。

不妨取区间[-pi/3,pi/3],注意不能超出(-pi/2,pi/2)

命令如下:

x=-pi/3:0.01:pi/3;

y=1./cos(x);

plot(x,y)

追问

为什么区间有pi/2的时候变成了一条直线?求指教,这个区间有pi/2怎么办?

追答

因为cos(pi/2)=0 x=pi/2时,1/cos(x)=无穷,所以你会看到在pi/2这个点有一个峰,看起来就是一条直线了。
这个区间有pi/2的话,你可以把pi/2这个奇点去掉,比如说
要画[0,pi]之间的图,你可以画[0,pi/2-0.05]并上[pi/2+0.05,pi]区间的图。
命令
x1=0:0.01:pi/2-0.05;
x2=pi/2+0.05:0.01:pi;
y1=1./cos(x1);y2=1./cos(x2);
plot(x1,y1,x2,y2,'b-')

追问

我一直在画y1=2/cosx1 和y2=1.5/sinx2(x1=0:atan(3/4) x2=atan(3/4):pi/2的图,画的一直是直线,求求帮忙了,感激不尽。。。

追答

x1=0:0.01:atan(3/4);
y1=2./cos(x1);
x2=atan(3/4):0.01:pi/2;
y2=1.5./sin(x2);
plot(x1,y1,x2,y2)

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-02-02
先设定x的取值区间,然后对自变量进行量化,分别计算其函数值,再PLOT就OK了。
如:x = -PI/4:PI/4
x1 = cos(x);
y = 1./x1;
plot(x,y)追问

为什么画的不是曲线?
而是一条直线?

追答

那肯定是x的坐标弄错了。看看PLOT的帮助

相似回答