非常强大的matlab入门作图教程.pptx

上传人:莉*** 文档编号:87529371 上传时间:2023-04-16 格式:PPTX 页数:91 大小:862.17KB
返回 下载 相关 举报
非常强大的matlab入门作图教程.pptx_第1页
第1页 / 共91页
非常强大的matlab入门作图教程.pptx_第2页
第2页 / 共91页
点击查看更多>>
资源描述

《非常强大的matlab入门作图教程.pptx》由会员分享,可在线阅读,更多相关《非常强大的matlab入门作图教程.pptx(91页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 MATLAB7.0不仅具有强大的数值计算功能,在数据可视化方面也是独占鳌头,可以满足同学们各方面的需求。对大家来说,抽象的数据往往是晦涩难懂的;但MATLAB通过图形编辑窗口和绘图函数方便地绘制二维、三维甚至多维图形,把杂乱离散的数据以形象的图形显示出来,有助于大家了解数据的性质和内在联系。Matlab 绘图第1页/共91页Matlab 绘图如何画出 ysin(x)在 0,2*pi 上的图像?第2页/共91页 手工作图u 找点:x=0,pi/3,pi/2,2*pi/3,pi,u 计算函数值:y=sin(0),sin(pi/3),sin(pi/2),u 描点:在坐标系中画出这些离散点u 用直线

2、或曲线连接这些点,得到函数的大致图形Matlab 绘图第3页/共91页 Matlab 作图Matlab 绘图u 给出离散点列:x=0:pi/10:2*piu 计算函数值:y=sin(x)u 画图:matlab 二维绘图命令 plot 作出函数图形 plot(x,y)例:x=0:pi/10:2*pi;y=sin(x);plot(x,y);第4页/共91页 在MATLAB中用图形函数绘图的一般操作步骤分为7步,如表所示,下面以绘制一个简单三角函数的图形为例,详细介绍各个步骤。第5页/共91页【例】用图形表示(1)准备图形数据 图形是数据变换规律和相互联系的形象显示,所以数据输入是图形创建的基础,我

3、们需要选定数据的范围,选择对应范围的自变量,计算相应的函数值。本例中,我们需在命令窗口输入如下代码:x=-pi/2:.1:pi/2;y=cos(x)-sin(x);Matlab 绘图步骤第6页/共91页(2)选择图形的显示位置 系统默认图形窗口为Figure1,如果大家需要在图形窗口中并列显示多个窗口,这需要使用subplot指令来选择子图号。如果大家需要把图形窗口定义为Figure6,并且分为3*2=6个子窗口,使得本例函数图形显示在图形窗口的左下角,那么大家需要在命令窗口中输入以下代码:figure(6);Subplot(3,2,5)Matlab 绘图步骤第7页/共91页(3)调用绘图指令

4、并设置参数 此步是主要绘图步骤,调用plot函数绘制图形plot(x,y)(4)选择线性和标记属性 此步可以单独使用图形句柄设置,也可以与步骤(3)同时进行,选择图形的线性、颜色及数据点型等参数,形成图形概貌,如果大家希望用黑色点线“-.”来绘制本例函数,并使用“*”标注点型,则可输入plot(x,y,k-.*)Matlab 绘图步骤第8页/共91页(5)设置坐标范围及网格线 完成基本绘制后,在图形概貌的基础上对图形进行编辑,增强图形的可读性;一般说来,大家需要设置坐标轴的刻度范围和分隔线。本例系统默认的坐标轴范围是x,y-2,2,且没有网格线,将本例的坐标轴和坐标轴的范围分别设置为-,和,且

5、给坐标加上分隔线,可以输入以下代码:axis(-pi,pi,-4,4)grid onMatlab 绘图步骤第9页/共91页(6)给图形加注释 为了进一步使图形具有说服力和可读性,我们还经常给图形添加注释,例如图形的名称、坐标轴的名称、图例及文字说明,针对本例图形,给图形取名为“first figure”,x和y坐标轴分别取名“横”、“纵”,图例设置为“y=cos(x)-sin(x)”,并在(pi/2,-1)点加上文字说明“final point”,输入以下代码:title(first figure);xlabel(横);ylabel(纵);legend(y=cos(x)-sin(x);text

6、(pi/2,-1,final point);Matlab 绘图步骤第10页/共91页(7)图形输出 大家完成图形的绘制和编辑以后,需要将图形打印或是存放在其他文档中,最简单的方法是使用【file】菜单中的【save as】选项,并且大家可以自行选择需要保存的格式类型。Matlab 绘图步骤第11页/共91页Matlab 二维作图u plot(x,y)q 基本形式 x,y 都是向量,则以 x 中元素为横坐标,y 中元素为纵坐标作平面曲线。此时 x,y 必须具有相同长度。第12页/共91页plot 举例 x=0:0.1:4*pi;y=cos(x);plot(x,y);例:y=cos(x)在 0,4

7、 上的图像自己动手 在0 x2区间内,绘制曲线 y=2e-0.5x cos(4x)第13页/共91页程序如下:x=0:pi/100:2*pi;y=2*exp(-0.5*x).*cos(4*pi*x);plot(x,y)【例】在0 x2区间内,绘制曲线 y=2e-0.5x cos(4x)此点必加第14页/共91页Matlab 二维作图u plot(x,y)q 基本形式 x,y 都是向量,则以 x 中元素为横坐标,y 中元素为纵坐标作平面曲线。此时 x,y 必须具有相同长度。当x,y 是同维矩阵时,则以x,y对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。此时 x,y 必须具有相同的大

8、小。第15页/共91页 x 是向量,y 是矩阵,若 x 的长度与 y 的行数相等,则将 x 与 y 中的各列相对应,绘制多条平面曲线;若 x 的长度与 y 的列数相等,则将 x 与 y 中的各行相对应,绘制多条平面曲线。此时 x 的长度必须等于 y 的行数或列数。第16页/共91页 指出以下各个绘图命令的输出图形分别是什么,并上机验证 t=0 1;x=1 2;y=x;3 4;z=y;5 6;plot(t,x);plot(t,y);plot(t,y);plot(t,z);plot(t,z);第17页/共91页Matlab 二维作图u plot(y):绘制向量 y 中元素的线性图q 基本形式(续)

9、(1)Y为实向量,则以Y的索引坐标作为横坐标,Y作为纵坐标来绘制图形。例:y=rand(100,1);plot(y)(2)如果Y为复数向量,则以向量的实部作为横坐标,虚部作为纵坐标,来绘制图形。例:x=rand(100,1);z=x+y.*i;plot(z)第18页/共91页例:y=0,0.48,0.84,1,0.91,6.14;plot(y);figure(2);plot(1:length(y),y)自己动手x=1:length(y);plot(x,y);以下标为横坐标,元素值为纵坐标,等价于:plot(Y):当 Y 是矩阵时的图形是什么?Y=1 2;3 5;6 9;plot(Y);plot

10、(Y);此例不错第19页/共91页q具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。调用格式为:plotyy(x1,y1,x2,y2)其中x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。第20页/共91页【例】用不同标度在同一坐标内绘制曲线:y1=0.2e-0.5x cos(4x)y2=2e-0.5x cos(x)。程序如下:x=0:pi/100:2*pi;y1=0.2*exp(-0.5*x).*cos(4*pi*x);y2=2*e

11、xp(-0.5*x).*cos(pi*x);plotyy(x,y1,x,y2);第21页/共91页q 点和线的基本属性图形的属性u plot(x,y,string)其中 string 是用 单引号 括起来的字符串,用来指定图形的属性(点、线的形状和颜色)属性可以全部指定,也可以只指定其中某几个排列顺序任意红色、虚线、离散点用加号蓝色、点划线离散点为菱形黑色、实线离散点用星号 x=0:0.2:2*pi;plot(x,cos(x);plot(x,cos(x),r+:);plot(x,cos(x),bd-.);plot(x,cos(x),k*-);第22页/共91页plot(X,Y,s)s参数:-实

12、线 .点 *星号 上三角:点线 o 圆 s 方形 右三角-虚线+号 v 下三角 p 正五边形y 黄色 m 紫红色c 蓝绿色r 红色 g 绿色 b 蓝色 w 白色 k 黑色 上述参数的不同组合可以为图形设置不同的线形、颜色和标识,调用时以单引号来引用,各选项直接相连,不需要分隔符。第23页/共91页【例】x=0:0.1*pi:pi;y=sin(x);z=cos(x);plot(x,y,-k,x,z,-.rd)第24页/共91页q图形标注与坐标控制 有关图形标注函数的调用格式为:title(图形名称)xlabel(x轴说明)ylabel(y轴说明)text(x,y,图形说明)legend(图例1,

13、图例2,)图形的其他属性第25页/共91页图形的其他属性u 标题title(text)例title(text,Property1,value1,Property2,value2,.)Property:linewidth,markersize,fontsize,fontweight,fontname,可以指定文本的属性第26页/共91页图形的其他属性u 坐标轴标注xlabel(text)或 ylabel(text)例:第27页/共91页图形的其他属性u 添加图例legend(string1,string2,.)u 在指定地方添加文本text(x,y,string1,string2,.)legen

14、d(cos(x);text(pi/2,cos(pi/2),leftarrowy=cos(x);xlable,ylabel,text 命令也可以指定文本的属性第28页/共91页其他相关命令u 保持当前窗口的图像hold on 或 hold offu 新建绘图窗口figure(n)u 显示网格grid on 或 grid off第29页/共91页figure(n)创建窗口函数,n为窗口顺序号。t=0:pi/100:2*pi;y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5);plot(t,y)%自动出现第一个窗口figure(2)plot(t,y1)%在第二窗口绘图figu

15、re(3)plot(t,y2)%在第三窗口绘图第30页/共91页第31页/共91页 MATLAB的绘图功能十分灵活,不但可以在一个图形窗口中绘制多个完全独立的子图,称为绘制子图;也允许用户在一个图形中绘制多条曲线,称为图形叠绘。接下来首先介绍子图的绘制方法。绘制子图 当大家需要进行相关图形的比较或者是同类图形的分析时,比较方便的方式是把若干图形在同一个图形窗口显示出来。针对用户的这一点需要,MATLAB提供了子图的绘制功能,并约定了符合常规思维习惯的分栏方式。第32页/共91页绘制子图u 划分绘图区域subplot(m,n,p)将一个绘图窗口分割成 m*n 个子区域,并 按行 从左至右 依次编

16、号。p 表示第 p 个绘图子区域。subplot 子图分割命令调用格式:subplot(m,n,p)按从左至右,从上至下排列 行列绘图序号第33页/共91页绘制子图u 划分绘图区域subplot(m,n,p)怎样在一个绘图区域内绘制多个函数的图像?将一个绘图窗口分割成 m*n 个子区域,并 按行 从左至右 依次编号。p 表示第 p 个绘图子区域。x=-pi:pi/10:pi;subplot(2,2,1);plot(x,sin(x);subplot(2,2,2);plot(x,cos(x);subplot(2,2,3);plot(x,x.2);subplot(2,2,4);plot(x,exp(

17、x);例:第34页/共91页 刚才已经解决了“一个窗口绘制多图”的问题,接下来将介绍如何“一个坐标轴绘制多曲线”。在实际工作中,大家常常需要即已经绘制完成的图形上再次添加或删减图形,这时可以调用hold函数,hold函数的调用格式和功能如下:lhold:在图形保功能保持和关闭状态之间切换。lhold on:启动图形保持功能,在原图的基础上,再次绘制的图形将全部添加到图形窗口中,并自动调整坐标轴范围;lhold off:关闭图形保持功能;第35页/共91页【例】采用图形保持,在同一坐标内绘制曲线 y1=0.2e-0.5xcos(4x)y2=2e-0.5xcos(x)。程序如下:x=0:pi/10

18、0:2*pi;y1=0.2*exp(-0.5*x).*cos(4*pi*x);plot(x,y1)hold ony2=2*exp(-0.5*x).*cos(pi*x);plot(x,y2);hold off第36页/共91页同时绘制多个函数图像u plot(x1,y1,s1,x2,y2,s2,.,xn,yn,sn)属性选项可以省略等价于:hold onplot(x1,y1,s1)plot(x2,y2,s2).plot(xn,yn,sn)第37页/共91页q给坐标加网格线用grid命令来控制。grid on/off命令控制是画还是不画网格线,不带参数的grid命令在两种状态之间进行切换。q给坐标

19、加边框用box命令来控制。box on/off命令控制是加还是不加边框线,不带参数的box命令在两种状态之间进行切换。第38页/共91页图形的其他属性 x=-pi:pi/10:pi;y=sin(x);plot(x,y,rh:,linewidth,2,.markeredgecolor,b,.markerfacecolor,g)例:q 线条的粗细,字体大小,坐标轴属性等。linewidth:指定线条的粗细markeredgecolor:指定标记的边缘色markerfacecolor:指定标记表面的颜色注:1)属性与属性的值是成对出现的 2)更多属性参见 plot 的联机帮助第39页/共91页图形的

20、基本属性线型线型点标记点标记颜色颜色-实线实线:虚线虚线-.点划线点划线-间断线间断线.点点o 小圆圈小圆圈x 叉子符叉子符+加号加号*星号星号s 方格方格d 菱形菱形 朝上三角朝上三角v 朝下三角朝下三角 朝右三角朝右三角 t=0:0.1:10*pi;x=2*t;y=sin(t);z=cos(t);plot3(x,y,z);plot3(x,y,z,s)第54页/共91页绘制三维网格-mesh函数 网格图形是指连接相邻数据点形成的网状曲面,数据点是x-y平面的矩形网格上点的z轴坐标值。网格图的绘制步骤如下:(1)在x-y平面上指定一个矩形区域,采用与坐标轴平行的直线进行分格;(2)计算矩形网格

21、点的z轴坐标值,得到三维空间的数据点;(3)利用以上得到的数据点,将x-z平面或者y-z平面内,以及平行平面内的数据点连接,形成网格图。第55页/共91页空间三维作图q 空间曲面 mesh(Z)绘出矩阵 Z 的三维消隐图。mesh(x,y,Z)x,y 是向量时,length(x)=n,length(y)=m,m,n=size(Z)mesh(X,Y,Z,C)绘制由矩阵 X,Y,Z 所确定的曲面网格图,矩阵 C 用于确定网格颜色,省略时 C=Z。mesh,meshc,meshzmeshc调用方式与 mesh 相同,在 mesh 基础上增加等高线meshz调用方式与 mesh 相同,在 mesh 基

22、础上屏蔽边界面第56页/共91页【例】矩阵的三维网线图z=rand(6);z=round(z)1 0 0 1 0 0 0 1 0 1 0 1 0 1 1 1 1 0 1 0 1 1 0 0 1 0 1 0 0 1 1 0 1 0 0 1mesh(z);第57页/共91页mesh(z)第58页/共91页【例例】8阶阶hadamard矩阵的网线图矩阵的网线图h2=1 1;1-1;h4=h2 h2;h2-h2;h8=h4 h4;h4-h4;mesh(h8)第59页/共91页第60页/共91页空间三维作图u 网格生成函数:meshgridx,y 为给定的向量,X,Y 是网格划分后得到的网格矩阵u 绘制

23、由函数 z=z(x,y)确定的曲面时,首先需产生一个网格矩阵,然后计算函数在各网格点上的值。若 x=y,则可简写为 X,Y=meshgrid(x)X,Y=meshgrid(x,y)x=-8:0.5:8;y=-8:0.5:8;X,Y=meshgrid(x,y);r=sqrt(X.2+Y.2)+eps;Z=sin(r)./r;mesh(X,Y,Z)例:第61页/共91页绘制三维曲面-surf函数 曲面图是把网格图表面的网格围成的片状区域用不同的色彩填充,而形成的彩色表面。除了网格空档被色彩填充之外,曲面图与网格图外观是一样的,但是前者更具立体感。MATLAB中的surf函数专门用于绘制三维着色曲面

24、图,其调用格式和对数据准备的要求上节的mesh函数相同,第62页/共91页 x=-8:0.5:8;y=-8:0.5:8;X,Y=meshgrid(x,y);r=sqrt(X.2+Y.2)+eps;Z=sin(r)./r;surf(X,Y,Z)例:第63页/共91页qsurf 三维曲面绘图函数,与网格图看起来一样与三维网线图的区别:网线图:线条有颜色,空挡是黑色的(无颜色)曲面图:线条是黑色的,空挡有颜色把线条之间的空挡填充颜色,沿z轴按每一网格变化绘制三维曲面-surf函数第64页/共91页调用格式:surf(x,y,z)绘制三维曲面图,x,y,z为图形坐标向量例:X,Y,Z=peaks(30

25、)peaks为matlab自动生成的三维测试图形surf(X,Y,Z)第65页/共91页 surfc(X,Y,Z)带等高线的曲面图X,Y,Z=peaks(30);surfc(X,Y,Z)第66页/共91页 surfl(X,Y,Z)被光照射带阴影的曲面图X,Y,Z=peaks(30);surfl(X,Y,Z)第67页/共91页 cylinde(r,n)三维柱面绘图函数r为半径;n为柱面圆周等分数例:绘制三维陀螺锥面t1=0:0.1:0.9;t2=1:0.1:2;r=t1-t2+2;x,y,z=cylinder(r,30);surf(x,y,z);grid第68页/共91页 为球面等分数,缺省为2

26、0例:绘制三维球面x,y,z=sphere(30);surf(x,y,z);第69页/共91页 点 线二维作图机制例:y=sin(x),0 x x=0:0.5:2*pi;y=sin(x);plot(x,y,.)先画点,后连线一、画点第70页/共91页 点 线二维作图举例例:y=sin(x),0 x x=0:0.5:2*pi;y=sin(x);plot(x,y,r.-)先画点,后连线二、连线第71页/共91页二维作图举例 x=0:0.1:2*pi;y=sin(x);plot(x,y,.)加密:取更多的点 x=0:0.1:2*pi;y=sin(x);plot(x,y,.-)x=0:0.1:2*pi

27、;y=sin(x);plot(x,y)第72页/共91页q 例例:三维螺三维螺线线 Matlab 空间曲线绘图举例x=t,y=sin(t),z=cos(t),0 t t=0:0.5:20;x=t;y=sin(t);z=cos(t);plot3(x,y,z,.-)t=0:0.5:20;x=t;y=sin(t);z=cos(t);plot3(x,y,z,.)第74页/共91页空间曲线作图举例 t=0:0.1:20;x=t;y=sin(t);z=cos(t);plot3(x,y,z)t=0:0.1:20;x=t;y=sin(t);z=cos(t);plot3(x,y,z,.-)第75页/共91页线:

28、分别沿 x 方向和 y 方向连接这些点即可得到空间曲面作图先画点(x,y,z),后连线,构成曲面网格图点:第76页/共91页q 例:“墨西哥帽子”空间曲面作图举例(a x a,-a y x=-8:0.5:8;y=-8:0.5:8;X,Y=meshgrid(x,y);r=sqrt(X.2+Y.2)+eps;Z=sin(r)./r;mesh(X,Y,Z)1)x 与 y 可以取不同的步长2)注意这里采用的数组运算eps?最后一个命令能否改为 mesh(Z)?X,Y=meshgrid(-8:0.5:8);第78页/共91页例:绘制等高线 meshc空间曲面作图举例 X,Y=meshgrid(-8:0.

29、5:8);r=sqrt(X.2+Y.2)+eps;Z=sin(r)./r;meshc(X,Y,Z)第79页/共91页例:绘制边界面屏蔽 meshz空间曲面作图举例 X,Y=meshgrid(-8:0.5:8);r=sqrt(X.2+Y.2)+eps;Z=sin(r)./r;meshz(X,Y,Z)第80页/共91页空间三维作图q 空间曲面其它作图函数 u sphere(n)专用于绘制单位球面mesh 绘制网格图,surf 绘制着色的三维表面图u surf(X,Y,Z)绘制由矩阵 X,Y,Z 所确定的曲面图,参数含义同 meshsphere 只能画单位球面!自己动手绘制球面 x2+y2+z2=1

30、6第81页/共91页surf 作图举例 X,Y=meshgrid(-8:0.5:8);r=sqrt(X.2+Y.2)+eps;Z=sin(r)./r;surf(X,Y,Z)第82页/共91页mesh 与 surf 的比较第83页/共91页如果没有给出 n 的值,则系统默认为 n=20sphere 作图第84页/共91页u 其它调用方式:axis auto 自动模式,使得图形的坐标满足图中的一切元素axis equal 各坐标轴采用等长刻度axis square 使绘图区域为正方形axis on/off 恢复/取消对坐标轴的一切设置axis manual 以当前的坐标限制图形的绘制(多图时)更多

31、参见 axis 的联机帮助坐标轴控制axis(xmin,xmax,ymin,ymax,zmin,zmax)作用:控制坐标轴的显示范围q 坐标轴控制命令:axis第85页/共91页u r,g,b 都是 0 1 之间的一个数u s 为字符串,表示所采用的色系,常用的值有颜色映象颜色映象 相应的颜色系相应的颜色系 颜色映象颜色映象 相应的颜色系相应的颜色系autumn红黄色系红黄色系hsv色调饱和色系色调饱和色系gray线性灰色系线性灰色系hot黑红黄白色系黑红黄白色系cool青和洋红色系青和洋红色系 pink柔和色系柔和色系图像的着色方案colormap(r g b)或 colormap(s)q

32、colormap:设置绘图的着色方案第86页/共91页u ezplot(f)Matlab 符号作图q 二维曲线绘图:ezplotu ezplot(f,a,b)u ezplot(f(x,y)u ezplot(f(x,y),a,b,c,d)u ezplot(f,g,a,b)缺省的绘图区间为-2,2第87页/共91页例:ezplot 作图第88页/共91页Matlab 符号作图q 空间曲线绘图:ezplot3缺省的绘图区间为 0,2u ezplot3(x,y,z,a,b)u ezplot3(x,y,z)第89页/共91页Matlab 符号作图q 空间曲面绘图:ezmesh、ezsurfu ezmesh(z(x,y),a,b,c,d)u ezmesh(z(x,y),a,b)u ezmesh(z(x,y)u ezmesh(x(s,t),y(s,t),z(s,t),a,b,c,d)u ezmesh(x(s,t),y(s,t),z(s,t),a,b)u ezmesh(x(s,t),y(s,t),z(s,t)ezsurf 的用法与 ezmesh 相同第90页/共91页感谢您的观看!第91页/共91页

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

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁