[理学]北京科技大学《matlab和数学实验》绘图

上传人:油条 文档编号:55344843 上传时间:2018-09-27 格式:PPT 页数:47 大小:1.18MB
返回 下载 相关 举报
[理学]北京科技大学《matlab和数学实验》绘图_第1页
第1页 / 共47页
[理学]北京科技大学《matlab和数学实验》绘图_第2页
第2页 / 共47页
[理学]北京科技大学《matlab和数学实验》绘图_第3页
第3页 / 共47页
[理学]北京科技大学《matlab和数学实验》绘图_第4页
第4页 / 共47页
[理学]北京科技大学《matlab和数学实验》绘图_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《[理学]北京科技大学《matlab和数学实验》绘图》由会员分享,可在线阅读,更多相关《[理学]北京科技大学《matlab和数学实验》绘图(47页珍藏版)》请在金锄头文库上搜索。

1、matlab 绘图,北京科技大学数学实验,北京科技大学数学实验,二维曲线绘图,二维特殊图形,三维曲线绘图,三维曲面绘图,一、 matlab二维曲线绘图,北京科技大学数学实验,1、基本绘图指令 命令形式1:plot(y) 功能:画一条或多条折线图。,将(i,y(i) 画出,x 取的是自然数,例: y=2,3,5,6; 8,5,7,4; 4,5,6,7; plot(y),北京科技大学数学实验,命令形式2:plot(x,y) 功能:画一条或多条折线图。,其中,x,y 可以是向量或矩阵。,说明:1、当x,y都是向量时,元素个数必须相等, plot(x,y)按顺序连接各点(x(i),y(i)成一条曲线

2、或折线。,北京科技大学数学实验,例:x=1 2 3; y=3 2 5; plot(x,y),北京科技大学数学实验,说明:2、当x为n维向量,y为n * m矩阵时,plot(x,y) 按向量x分别与矩阵y的每一列匹配,画出m条曲线或折线。,例 x= 3 4 7; y=4 5 6 5 4 7 9 5 1 4 2 5; plot (x,y),北京科技大学数学实验,思考: 1、当x为n维向量,y为m x n 矩阵时, plot(x,y)怎么画? 2、当x为n维向量,y为m x w 矩阵时, plot(x,y)怎么画? 3、当x为n维向量,y为n x n 矩阵时, plot(x,y)怎么画? 4、当x,

3、y为n x n 矩阵时,plot(x,y) 怎么画?,北京科技大学数学实验,可以。 x=a:h:b 函数f(x)在绘图区间a,b上的自变量点向 量数据 y=f(x) 对应的函数值向量 步长h可以任意选取,步长越小,曲线越光滑。,北京科技大学数学实验,问题:plot(x,y)命令可以用来画通常的函数 f(x)(其中axb)的图像?,例1 在区间- , 上,绘制函数y = sin(x)图形。,grid on作用是:在图形中标出网格线,解: Matlab 命令: x=-pi:pi/50:pi; y=sin(x); plot(x,y),grid on,北京科技大学数学实验,北京科技大学数学实验,曲线y

4、 = sin x,命令形式3 :plot(x1,y1,x2,y2,x3,y3) 功能:在同一图形窗口画出多条曲线 。,北京科技大学数学实验,例2 :在同一图形窗口画出三个函数y =2x, y = cosx, y =sin x的图形,自变量范围为:-3 x 3 解 Matlab命令: x=-3:0.1:3; y1=2*x;y2=cos(x);y3=sin(x); plot(x,y1, x,y2, x,y3) legend(2*x,cos(x),sin(x),legend作用是:对图形进行图例标注,北京科技大学数学实验,例2的绘图结果,北京科技大学数学实验,图形的重叠绘制hold hold 在ho

5、ld on与 hold off之间进行切换 hold on 保留当前图形和它的轴,使此后图形叠放在当前图形上 hold off返回Matlab的缺省状态。此后图形指令运作将抹掉当前窗中的旧图形,然后画上新图形。,北京科技大学数学实验,2基本绘图控制参数 控制分隔线grid grid 在grid on与 grid off之间进行切换 grid on 在图中使用分隔线 grid off 在图中消隐分隔线,3线型、定点标记、颜色 二维绘图指令还提供一组控制曲线线型、标记类型、颜色的开关。该开关总跟在一元或二元对的后面,具体如下: plot(x,y, String) plot(x1,y1, Strin

6、g1,x2,y2, String2,) 其中,string是字符串,该字符串由表4-1、表4-2表4-3(见课本P45)中的字符组成。,北京科技大学数学实验,例6 利用hold指令在同一坐标系中画出如下两条参数曲线,参数曲线方程为:,t满足,解 Matlab 命令为 t=0:pi/50:2*pi; plot(cos(t),sin(t),b*) ,grid on, hold on,plot(sin(t),sin(2*t),r.),北京科技大学数学实验,北京科技大学数学实验,4图形的标注 图名标注title title(String) 在图形的顶端加注文字作为图名 坐标轴标注xlabel,ylab

7、el,zlabel xlabel(String) 在当前图形的x轴旁边加入文字内容 ylabel(String) 在当前图形的y轴旁边加入文字内容 zlabel(String) 在当前图形的z轴旁边加入文字内容,北京科技大学数学实验,图形标注gtext gtext(String) 在鼠标指定位置上标注 说明:使用gtext指令后,会在当前图形上出现一个十字叉,等待用户选定位置进行标注。移动鼠标到所需位置按下鼠标左键,Matlab就在选定位置标上文字。,北京科技大学数学实验,图例标注legend legend(string1,string2,string3) 当在一幅图中出现多种曲线时,结合在绘

8、制时的不同线性与颜色等特点,用户可以用legend命令进行说明。,5.一个图形窗口多个子图的绘制,subplot指令它不仅适用于二维图形而且也适用于三维图形。其本质是将窗口分为几个区域,再在每个小区域中画图形。,subplot(m, n,i)或subplot(mni) 把图形窗口分为mn个子图,并在第i个子图中画图。,北京科技大学数学实验,例7 在同一坐标系中画出两个函数y = cos 2x , y = sin x sin 6x的图形,自变量范围为:-2 x 2, 函数 y = cos 2x用红色星号, 函数y = sin x sin 6x用蓝色实线。并加图名、坐标轴、图形、图例标注。 解:

9、Matlab命令为 clf x=0:pi/50:pi; y1=cos(2*x) ;y2=sin(x).*sin(6*x) ; subplot(1,2,1);plot(x,y1,r*,x,y2,b-),grid on title(曲线y1=cos2x与sinxsin6x) xlabel(x轴),ylabel(y轴) gtext(y1=cos2x),gtext(y2=sinxsin6x) legend(cos2x,sinxsin6x) subplot(1,2,2);plot(x,y1,x,y2),北京科技大学数学实验,北京科技大学数学实验,二、 matlab二维特殊图形,北京科技大学数学实验,北京

10、科技大学数学实验,例:绘制条形图 t=0:pi/5:2*pi; y=cos(t); bar(y),北京科技大学数学实验,例:绘制面积图 (1) x=1:4; y=1 2 3 4; area(x,y),北京科技大学数学实验,例:绘制面积图 (2) x=1:4;y=1 4 2;2 4 3;4 7 5;0 5 4; area(x,y),北京科技大学数学实验,例:绘制饼图 x=30 48 36 20 12; explode=0 0 0 0 1; pie(x,explode),例:绘制火柴棍图 x=0:.1:2; y= exp(-x.2); stem(y),北京科技大学数学实验,北京科技大学数学实验,例

11、:绘制阶梯图 x=0:pi/20:2*pi; y=sin(2*x); stairs(x,y),北京科技大学数学实验,例:极坐标图 polar(t,r) 使用极角t和极径r绘制极坐标图形;,t=0:pi/50:2*pi; polar(t,abs(sin(4*t),r),三、matlab三维曲线绘图,plot3三维曲线绘制指令,北京科技大学数学实验,plot3的调用格式:,plot3(X,Y,Z) plot3(X,Y,Z,String) plot3(X1,Y1,Z1, String1,X2,Y2,Z2, String2,),plot3与plot的 用法相同,例:绘制三维曲线的图像:,北京科技大学数

12、学实验,,,t=0:pi/10:20*pi; x=t.* sin(t); y=t.*cos(t) ; z=t ; plot3(x,y,z),解:matlab命令为:,四、Matlab空间曲面绘图,Meshgrid命令:,Mesh命令与Surf命令:,用来生成x-y平面上的小矩形顶点坐标值的矩阵,也称为格点矩阵。,分别生成函数的网格曲面; 与生成函数的表面曲面。,Meshgrid命令,介绍 二元函数z = f(x, y) 的图形是三维空间曲面,在Matlab中总是假设函数z = f(x, y)是定义在矩形区域D=x0,xmy0,yn上的。 为了绘制三维曲面,Matlab把x0,xm分成m份,把y

13、0,yn分成n份,这时区域D就被分成mn个小矩形块。 每个小矩形块有4个顶点(顶点也叫格点)(xi,yi,f(xi,yi).连接4个顶点得到一个空间中的四边形片。 所有这些四边形片就构成函数的空间网格曲面。 而函数meshgrid就用来生成x-y平面上的小矩形顶点坐标值的矩阵,也称为格点矩阵。 函数meshgrid也适用于三元函数u = f(x, y,z)。,meshgrid的调用形式是:,X,Y=meshgrid(x,y),X,Y=meshgrid(x),X,Y,Z=meshgrid(x,y,z),X,Y=meshgrid(x,x)。,绘制二维图形时生成 小矩形的格点。,X,Y,Z=mesh

14、grid(x),绘制三维图形时生 成空间曲面的格点。,等价于,X,Y,Z=meshgrid(x,x,x),等价于,说明: x是区间x0,xm上分划点组成的m维向量; y是区间y0,yn上分划点组成的n维向量; 输出变量X与Y都是nm矩阵; 矩阵X的行向量都是向量x; 矩阵Y的列向量都是向量y。,例:x=1,2,3;y=1,2,3,4; X,Y=meshgrid(x,y) X = 1 2 3 1 2 3 1 2 3 1 2 3 Y = 1 1 1 2 2 2 3 3 3 4 4 4,北京科技大学数学实验,Mesh命令与Surf命令,Mesh命令介绍 利用函数meshgrid生成格点矩阵后,然后求

15、出各格点对应的函数值,然后利用三维网格图命令mesh与三维网面图命令画出空间曲面。 函数mesh用来生成函数的网格曲面,只对网格线进行着色的曲面。 函数surf用来生成函数的表面曲面,即对网格曲面的网格块(四边形片)区域进行着色。,mesh(X,Y,Z),mesh 指令格式:,mesh(x,y,Z),mesh(Z),否则默认x=1:n,y=1:m,X,Y,Z是同维数的矩阵,x,y是向量,而Z是矩阵。 等价于,若提供参数x,y,等价于 mesh(x,y,Z),例:x=1,2,3 y=1,2,3,4 X,Y=meshgrid(x,y) X = 1 2 3 Y =1 1 1 1 2 3 2 2 2 1 2 3 3 3 3 1 2 3 4 4 4 Z=ones(size(X);mesh(X,Y,Z),北京科技大学数学实验,surf 绘制三维曲面图,北京科技大学数学实验,与三维网格图的区别: 网格图:线条有颜色,空挡没有颜色 曲面图:线条是黑色,空挡有颜色(把线条之间的空挡填充颜色,沿z轴按每一网格变化),

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号