matlab教程--matlab快速入门-文字版, matlab电子书, 和matlab hold有关的电子书:

3.8.2 利用hold on和hold off画多重曲线的三种方法

3.8.2  利用hold on和hold off画多重曲线的三种方法

在同一个坐标系中画多条曲线的另一种方法是利用hold on和hold off函数在已经画好的图形上再增加曲线。如果设置hold on,则MATLAB软件将把新的plot或者ezplot函数产生的图形画在原来的图形上。而函数hold off结束这个过程。下面通过例题分别说明这些方法的具体应用。

 

(一) 利用hold on,ezplot和hold off函数在原有的图形上增加曲线

这种方法适用于在同一个坐标系中画多条隐函数的曲线。具体用法如下面的例题。

[例20] 在同一个坐标系中画出双曲线和椭圆的图形。

解 输入程序:

>>  syms x y

F1=x^2-y^2+1;F2=8*x^2+4*y^2-16;

ezplot(F1, [-3, 3]),

hold on

ezplot(F2, [-3,3])

hold off

运行后屏幕显示图 3-21。

 

图 3-21  双曲线和椭圆的图形

 

(二) 利用hold on,plot和hold off函数在原有的图形上增加曲线

这种方法适用于在同一个坐标系中画多条显函数的曲线。具体用法如下面的例题。

 

[例21] 给出一组数据点列入表 3-5中,试在同一个坐标系中画出数据点和拟合曲线及其的图形。

 

表 3-5  例21的一组数据点

xi

-2.5   -1.7    -1.1    -0.8    0     0.1     1.5   2.7    3.6

yi

-192.9  -85.50  -36.15  -26.52  -9.10  -8.43  -13.12  6.50  68.04

 

解 输入程序:

>> xi=[-2.5  -1.7  -1.1  -0.8  0  0.1  1.5  2.7  3.6];

y=[-192.9  -85.50  -36.15  -26.52  -9.10  -8.43 -13.12  6.50  68.04];

x=-3.5:0.1: 4.6;

F=5.0911.*x.^3-14.1905.*x.^2+6.4102.*x -8.2574;

G=2*x.^4-14.*x.^2-165;

plot(xi,y,'ro'),

hold on

plot(x,F,'b-')

hold off

hold on

plot(x,G,'g*')

hold off

legend('数据点(xi,yi)','拟合曲线y=f(x)', '函数y=g(x)')

xlabel('x'), ylabel('y'),

title('数据点(xi,yi),拟合曲线y=f(x)和函数y=g(x)的图形')

运行后屏幕显示数据点, 拟合曲线y=f(x)和函数y=g(x)的图形,见图 3-22 。

图 3-22  例21的数据散点图和拟合曲线的图形

 

最后,如果你在一段程序中画了几个图形,需要逐个观察,那么应该在每两个plot函数之间加一个pause函数,它暂停函数的执行,直到你击下任何一个键。

 

(三) 利用hold on,polar 和hold off函数在原有的图形上增加曲线

这种方法适用于在同一个极坐标系中画多条极坐标函数的曲线。具体用法如下面的例题。

 

[例22]  在同一个极坐标系中,绘制极坐标函数上的图形,

解 输入命令:

>>  t=-6.5*pi:pi/500:6.5*pi;

r = 100*(2-sin(7*t)-1/2*cos(30*t))./(100+(t-1/2*pi).^8);

polar(t,r,'gp')

hold on

r1=sin(4*t-1.5)./t;

polar(t,r1,'r-')

hold off

title('绿枫叶的粉领结')

运行后画出图 3-23。如果改变参数,将会得到很多有趣的图形。

图 3-23  的图形

 

以此类推,hold on 和hold off函数还可以与其他画图函数配合,在原有的图形上增加曲线。读者不妨试试。

欢迎转载,转载请注明来自一手册:http://yishouce.com/book/2/2030802.html
友情链接It题库(ittiku.com)| 版权归yishouce.com所有| 友链等可联系 admin#yishouce.com|粤ICP备16001685号-1