plot用法二维平面图形和三维立体图形教学资料.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《plot用法二维平面图形和三维立体图形教学资料.doc》由会员分享,可在线阅读,更多相关《plot用法二维平面图形和三维立体图形教学资料.doc(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Good is good, but better carries it.精益求精,善益求善。plot用法二维平面图形和三维立体图形。-第五讲计算结果的可视化本节介绍MATLAB的两种基本绘图功能:二维平面图形和三维立体图形。5.1二维平面图形5.1.1基本图形函数plot是绘制二维图形的最基本函数,它是针对向量或矩阵的列来绘制曲线的。也就是说,使用plot函数之前,必须首先定义好曲线上每一点的x及y坐标,常用格式为:(1)plot(x)当x为一向量时,以x元素的值为纵坐标,x的序号为横坐标值绘制曲线。当x为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线,当x为mn矩阵时,
2、就由n条曲线。(2)plot(x,y)以x元素为横坐标值,y元素为纵坐标值绘制曲线。(3)plot(x,y1,x,y2,)以公共的x元素为横坐标值,以y1,y2,元素为纵坐标值绘制多条曲线。例5.1.1画出一条正弦曲线和一条余弦曲线。x=0:pi/10:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,x,y2)图5.1.1函数plot绘制的正弦曲线在绘制曲线图形时,常常采用多种颜色或线型来区分不同的数据组,MATLAB软件专门提供了这方面的参数选项(见表5.1.1),我们只要在每个坐标后加上相关字符串,就可实现它们的功能。-2-表5.1.1绘图参数表色彩字符颜色线型字符线
3、型格式标记符号数据点形式标记符号数据点形式y黄-实线.点大于号例如,在上例中输入plot(x,y1,r+-,x,y2,k*:)则得图5.1.2图5.1.2使用不同标记的plot函数绘制的正弦曲线5.1.2图形修饰MATLAB软件为用户提供了一些特殊的图形函数,用于修饰已经绘制好的图形。表5.1.2图形修饰函数表函数含义gridon(/off)给当前图形标记添加(取消)网络xlable(string)标记横坐标ylabel(string)标记纵坐标title(string)给图形添加标题text(x,y,string)在图形的任意位置增加说明性文本信息gtext(string)利用鼠标添加说明性
4、文本信息axis(xminxmaxyminymax)设置坐标轴的最小最大值-3-例5.1.2给例5.1.1的图形中加入网络和标记。(见图5.1.3和5.1.4)x=0:pi/10:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,x,y2)gridonxlabel(independentvariableX)ylabel(DependentVariableY1&Y2)title(SineandCosineCurve)text(1.5,0.3,cos(x)gtext(sin(x)axis(02*pi-0.90.9)图5.1.3使用了图形修饰的plot函数绘制的正弦曲线5.1.3
5、图形的比较显示在一般默认的情况下,MATLAB每次使用plot函数进行图形绘制,将重新产生一个图形窗口。但有时希望后续的图形能够和前面所绘制的图形进行比较。一般来说有两种方法:一是采用holdon(/off)命令,将新产生的图形曲线叠加到已有的图形上;二是采用subplot(m,n,k)函数,将图形窗口分隔成nm个子图,并选择第k个子图作为当前图形,然后在同一个视图窗口中画出多个小图形。例5.1.3在同一窗口中绘制线段。(见图5.1.5)x=0:pi/10:2*pi;y1=sin(x);y2=cos(x);y3=x;-4-y4=log(x);plot(x,y1,x,y2)holdonplot(
6、x,y3)plot(x,y4)holdoff例5.1.4在多个窗口中绘制图形。(见图5.1.6)x=0:pi/10:2*pi;y1=sin(x);y2=cos(x);y3=exp(x);y4=log(x);subplot(2,2,1);plot(x,y1);subplot(2,2,2);plot(x,y2);subplot(2,2,3);plot(x,y3);subplot(2,2,4);plot(x,y4);说明(1)子窗口的序号按行由上往下,按列从左向右编号。(2)如果不用指令clf清除,以后图形将被绘制在子图形窗口中。图5.1.4设置坐标轴最大最小值的正弦曲线-5-图5.1.5图形的比较
7、显示(曲线叠加方法)图5.1.6图形的比较显示(图形窗口分割方法)-6-5.2三维立体图形5.2.1三维曲线图与二维图形相对应,MATLAB提供了plot3函数,可以在三维空间中绘制三维曲线,它的格式类似于plot,不过多了z方向的数据。plot3的调用格式为:plot3(x1,y1,z1,x2,y2,z2,.)其中x1,y1,z1,x2,y2,z2,等分别为维数相同的向量,分别存储着曲线的三个坐标值,该函数的使用方式和plot类似,也可以采用多种的颜色或线型(见表5.1.1)来区分不同的数据组,只需在每组变量后面加上相关字符串即可实现该功能。例5.2.1绘制方程x=ty=sin(t)z=co
8、s(t)在t=0,2*pi上的空间方程。(见图5.2.1)clfx=0:pi/10:2*pi;y1=sin(x);y2=cos(x);plot3(y1,y2,x,m:p)gridonxlabel(DependentVariableY1)ylabel(DependentVariableY2)zlabel(IndependentVariableX)title(SineandCosineCurve)图5.2.1函数plot绘制的三维曲线图-7-5.2.2三维曲面图如果要画一个三维的曲面,可以使用mesh(X,Y,Z)或surf(X,Y,Z)函数来实现。mesh函数为数据点绘制网格线,图形中的每一个已
9、知点和其附近的点用直线连接。surf函数和mesh的用法类似,但它可以画出着色表面图,图形中的每一个已知点与其相邻点以平面连接。为方便测试立体绘图,MATLAB提供了一个peaks函数,它可以产生一个的高斯分布矩阵,其生成方程是NNz=3*(1-x).2.*exp(-(x.2)-(y+1).2)-10*(x/5-x.3-y.5).*exp(-x.2-y.2)-1/3*exp(-(x+1).2-y.2)对应的图形是一个凹凸有致的曲面,包含了三个局部极大点及三个局部极小点。下面使用peaks函数来比较一下mesh和surf的区别。例5.2.2分别用mesh函数和surf函数绘制高斯矩阵的曲面。z=
10、peaks(40);mesh(z);surf(z);图5.2.2mesh函数绘制的三维曲面图-8-图5.2.3surf函数绘制的着色表面图在曲面绘图中,另一个常用的函数是meshgrid函数,其一般引用格式是:X,Y=meshgrid(x,y)其中x和y是向量,通过meshgrid函数就可将x和y指定的区域转换成为矩阵X和Y。这样我们在绘图时就可以先用meshgrid函数产生在x-y平面上的二维的网格数据,再以一组z轴的数据对应到这个二维的网格,即可画出三维的曲面。例5.2.3绘制方程sin(x2+y2)(1/2)z=-(x2+y2)(1/2)在x-7.5,7.5;y-7.5,7.5的图形。x
11、=-7.5:0.5:7.5;y=x;X,Y=meshgrid(x,y);R=sqrt(X.2+Y.2)+eps;Z=sin(R)./R;surf(X,Y,Z)xlabel(X轴方向)ylabel(Y轴方向)zlabel(Z轴方向)(见图5.2.4)_(x2+y2)例5.2.4绘制由方程形成的立体图。(见图5.2.5)z=xeclearx=-2:0.1:2;y=x;X,Y=meshgrid(x,y);Z=X.*exp(-X.2-Y.2);-9-surf(X,Y,Z)图5.2.4图5.2.5-10-5.2.3观察点MTALAB允许用户设置观察点,其指令是:view(azimuth,elevatio
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- plot 用法 二维 平面 图形 三维立体 教学 资料
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内