收藏 分销(赏)

第五章-matlab绘图复习课程.ppt

上传人:精**** 文档编号:10283318 上传时间:2025-05-14 格式:PPT 页数:58 大小:194.50KB 下载积分:14 金币
下载 相关
第五章-matlab绘图复习课程.ppt_第1页
第1页 / 共58页
第五章-matlab绘图复习课程.ppt_第2页
第2页 / 共58页


点击查看更多>>
资源描述
*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第五章 matlab绘图,二维数据曲线图,其他二维图形,隐函数绘图,三维图形,图形修饰处理,图像处理与动画制作,5/14/2025,2,5.1,二维数据曲线图,5.1.1,绘制单根二维曲线,plot,函数的基本调用格式为:,plot(x,y),其中,x,和,y,为长度相同的向量,分别用于存储,x,坐标和,y,坐标数据。,例,5-1,在,0 x2,区间内,绘制曲线,y=2e,-0.5x,cos(4x),例,5-2,绘制曲线。,5/14/2025,3,plot,函数最简单的调用格式是只包含一个输入参数:,plot(x),在这种情况下,当x是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。,5/14/2025,4,5.1.2,绘制多根二维曲线,1.plot,函数的输入参数是矩阵形式,(1)当,x,是向量,,y,是有一维与x同维的矩阵时,则绘制出多根不同颜色的曲线。,曲线条数,等于,y,矩阵的,另一维数,,,x,被作为这些曲线共同的横坐标,。,(2),当,x,y,是同维矩阵时,则以,x,y,对应列元素为横、纵坐标分别绘制曲线,,曲线条数,等于矩阵的,列数,。,5/14/2025,5,(,3),对只包含一个输入参数的,plot,函数,当输入参数是实矩阵时,则按列绘制每列元素值相对其下标的曲线,曲线条数等于输入参数矩阵的列数。,当输入参数是复数矩阵时,则按列分别以元素实部和虚部为横、纵坐标绘制多条曲线。,5/14/2025,6,2.,含多个输入参数的,plot,函数,调用格式为:,plot(x1,y1,x2,y2,xn,yn),(1),当输入参数都为向量时,,x1,和,y1,x2,和,y2,,,xn,和,yn,分别组成一组向量对,每一组向量对的长度可以不同。每一向量对可以绘制出一条曲线,这样可以在同一坐标内绘制出多条曲线。,5/14/2025,7,(2),当输入参数有矩阵形式时,配对的x,y按对应列元素为横、纵坐标分别绘制曲线,曲线条数等于矩阵的列数。,例5-3 分析下列程序绘制的曲线。,5/14/2025,8,3.,具有两个纵坐标标度的图形,在,MATLAB中,,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用,plotyy,绘图函数。调用格式为:,plotyy(x1,y1,x2,y2),其中,x1,y1,对应一条曲线,,x2,y2,对应另一条曲线。横坐标的标度相同,纵坐标有两个,左纵坐标用于,x1,y1,数据对,右纵坐标用于,x2,y2,数据对,。,5/14/2025,9,例,5-4,用不同标度在同一坐标内绘制曲线,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*exp(-0.5*x).*cos(pi*x);,plotyy(x,y1,x,y2);,5/14/2025,10,4.,图形保持,hold on/off,命令控制是保持原有图形还是刷新原有图形,不带参数的,hold,命令在两种状态之间进行切换。,例5-5 采用图形保持,在同一坐标内绘制曲线,y1=0.2e-0.5xcos(4x),和y2=2e-0.5xcos(x)。,5/14/2025,11,5.1.3,设置曲线样式,MATLAB,提供了一些绘图选项,用于确定所绘曲线的线型、颜色和数据点标记符号,它们可以组合使用。例如,“,b-.”,表示蓝色点划线,,“y:d”,表示黄色虚线并用菱形符标记数据点。当选项省略时,,MATLAB,规定,线型一律用实线,颜色将根据曲线的先后顺序依次,。,要设置曲线样式可以在,plot,函数中加绘图选项,其调用格式为:,plot(x1,y1,选项,1,x2,y2,选项,2,xn,yn,选项,n),5/14/2025,12,曲线的色彩、线型和数据点型参数定义,颜 色 符 号,含 义,数 据 点 型,含 义,线 型,含 义,b,蓝色,.,点,-,实线,g,绿色,x,X符号,:,点线,r,红色,+,+号,-.,点划线,c,篮绿色,h,六角星形,-,虚线,m,紫红色,*,星号,(空白),不画线,y,黄色,s,方形,k,黑色,d,菱形,13,例5-6 在同一坐标内,分别用不同线型和颜色,绘制曲线y1=0.2e-0.5xcos(4x),和y2=2e-0.5xcos(x),标记两曲线交叉点。,5/14/2025,14,5.1.4,图形标注与坐标控制,1.,图形标注,有关图形标注函数的调用格式为:,title(,图形名称,),xlabel(x,轴说明,),ylabel(y,轴说明,),text(x,y,图形说明,),legend(,图例,1,图例,2,),5/14/2025,15,函数中的说明文字,除使用标准的,ASCII,字符外,还可使用,LaTeX,格式的控制字符,这样就可以在图形上添加希腊字母、数学符号及公式等内容。例如,,text(0.3,0.5,sin(omegat+beta),将得到标注效,果sin(t+)。,例5-7 在0 x2,区间内,绘制曲线y1=2e-0.5x,和y2=cos(4x),并给图形添加图形标注,5/14/2025,16,axis,函数的调用格式为:,axis(xmin xmax ymin ymax zmin zmax),axis,函数功能丰富,常用的格式还有,:,axis equal:,纵、横坐标轴采用等长刻度,。,axis square:,产生正方形坐标系(缺省为矩形)。,axis auto:,使用缺省设置,。,axis off:,取消坐标轴,。,axis on:,显示坐标轴,。,2.坐标控制,5/14/2025,17,给坐标加网格线用grid命令来控制。,grid on/off,命令控制是画还是不画网格线,不带参数的,grid,命令在两种状态之间进行切换。,给坐标加边框用,box,命令来控制。,box on/off,命令控制是加还是不加边框线,不带参数的,box,命令在两种状态之间进行切换。,例,5-8,在同一坐标中,可以绘制,3,个同心,圆,并加坐标控制。,5/14/2025,18,5.1.5,图形的可视化编辑,MATLAB 7.0,版本在图形窗口中提供了可视化的图形编辑工具,利用图形窗口菜单栏或工具栏中的有关命令可以完成对窗口中各种图形对象的编辑处理。,在图形窗口上有一个菜单栏和工具栏。菜单栏包含,File、Edit、View、Insert、Tools、Desktop、Window,和,Help共7,个菜单项,工具栏包含,13,个命令按钮,。,5/14/2025,19,5.1.6,对函数自适应采样的绘图函数,fplot,函数的调用格式为:,fplot(fname,lims,tol,选项,),其中,,fname,为函数名,以字符串形式出现,,lims,为,x,y,的取值范围,,tol,为相对允许误差,其系统默认值为,2e-3。,选项定义与,plot,函数相同。,5/14/2025,20,例,5-9,用,fplot,函数绘制,f(x)=cos(tan(x),的曲线。,命令如下,:,fplot(cos(tan(pi*x),0,1,1e-4),5/14/2025,21,5.1.7,图形窗口的分割,subplot,函数的调用格式为,:,subplot(m,n,p),该函数将当前图形窗口分成mn个绘图区,即每行n个,共m行,区号按行优先编号,且选定第p个区为当前活动区。在每一个绘图区允许以不同的坐标系单独绘制图形。,例,5-10,在图形窗口中,以子图形式同时绘制多根曲线。,5/14/2025,22,5.2,其他二维图形,5.2.1,其他坐标系下的二维数据曲线图,1.,对数坐标图形,MATLAB,提供了绘制对数和半对数坐标,曲线的函数,调用格式为:,semilogx(x1,y1,选项,1,x2,y2,选项,2,),semilogy(x1,y1,选项,1,x2,y2,选项,2,),loglog(x1,y1,选项,1,x2,y2,选项,2,),例,5-11,应用上述函数作图。,5/14/2025,23,2.,极坐标图,polar,函数用来绘制极坐标图,其调用格式为,:,polar(theta,rho,选项,),其中,theta为,极坐标极角,,rho,为极坐标矢径,,,选项的内容与,plot,函数相似,。,例5-12 绘制r=sin(t)cos(t)的极坐标图,并标记数据点。,5/14/2025,24,5.2.2,二维统计分析图,在,MATLAB,中,二维统计分析图形很多,常见的有条形图、阶梯图、杆图和填充图等,所采用的函数分别是:,bar(x,y,选项),stairs(x,y,选项,),stem(x,y,选项,),fill(x1,y1,选项,1,x2,y2,选项,2,),例5-13 分别以条形图、阶梯图、杆图和填充图,形式绘制曲线y=2sin(x)。,5/14/2025,25,MATLAB,提供的统计分析绘图函数还有很多,例如,用来表示各元素占总和的百分比的饼图、复数的相量图等等。,例,5-14,绘制图形,:,(1),某企业全年各季度的产值(单位:万元)分别为,:2347,1827,2043,3025,,试用饼图作统计分析。,(2),绘制复数的相量图,:7+2.9i、2-3i,和-1.5-6i,。,5/14/2025,26,5.3,隐函数绘图,MATLAB,提供了一,个ezplot,函数绘制隐函,数图形,下面介绍其用法。,(1),对于函数,f=f(x),ezplot,函数的调用格 式为,:,ezplot(f):,在默认区间,-2x2,绘制,f=f(x),的图形。,ezplot(f,a,b):,在区间,axb,绘制,f=f(x),的图形,。,5/14/2025,27,(2),对于隐函数,f=f(x,y),ezplot,函数的调用格式为:,ezplot(f):,在默认区间,-2x2,和,-2y2,绘制,f(x,y)=0,的图形。,ezplot(f,xmin,xmax,ymin,ymax):,在区间,xminxxmax,和,yminyymax,绘制,f(x,y)=0,的图形,。,ezplot(f,a,b):,在区间,axb,和,ay b,绘制,f(x,y)=0,的图形,。,5/14/2025,28,(3),对于参数方程,x=x(t),和,y=y(t),ezplot,函数的调用格式为:,ezplot(x,y):,在默认区间,0t2,绘制,x=x(t),和,y=y(t),的图形,。,ezplot(x,y,tmin,tmax):,在区间,tmin t tmax,绘制,x=x(t),和,y=y(t),的图形。,例5-15 隐函数绘图应用举例。,5/14/2025,29,5.4,三维图形,5.4.1,三维曲线,plot3,函数与,plot,函数用法十分相似,其调用格式为:,plot3(x1,y1,z1,选项,1,x2,y2,z2,选项,2,xn,yn,zn,选项,n),其中每一组,x,y,z,组成一组曲线的坐标参数,选项的,定义和plot函数相同。当x,y,z是同维向量时,则x,y,z,对应元素构成一条三维曲线。当,x,y,z,是同维矩阵时,则以,x,y,z,对应列元素绘制三维曲线,曲线条数等于矩阵列数。,5/14/2025,30,程序如下:,t=0:pi/100:20*pi;,x=sin(t);,y=cos(t);,z=t.*sin(t).*cos(t);,plot3(x,y,z);,title(Line in 3-D Space);,xlabel(X);ylabel(Y);zlabel(Z);,grid on;,例5-16 绘制三维曲线。,5/14/2025,31,5.4.2,三维曲面,1.,产生三维数据,在,MATLAB,中,利用,meshgrid,函数产生平面区域内的网格坐标矩阵。其格式为,:,x=a:d1:b;y=c:d2:d;,X,Y=meshgrid(x,y);,语句执行后,矩阵X的每一行都是向量,x,,行数等于向量,y,的元素的个数,矩阵Y的每一列都是向量,y,,列数等于向量,x,的元素的个数。,5/14/2025,32,2.,绘制三维曲面的函数,surf,函数和,mesh,函数的调用格式为,:,mesh(x,y,z,c),surf(x,y,z,c),一般情况下,,x,y,z,是维数相同的矩阵,。x,y,是网格坐标矩阵,,z,是网格点上的高度矩阵,,c,用于指定在不同高度下的颜色范围。,例5-17 绘制三维曲面图z=sin(x+sin(y)-x/10。,5/14/2025,33,此外,还有带等高线的三维网格曲面函数,meshc,和带底座的三维网格曲面函数,meshz,。其用法与mesh类似,不同的是,meshc,还在xy平面上绘制曲面在z轴方向的等高线,,meshz,还在xy平面上绘制曲面的底座。,例5-18 在xy平面内选择区域-8,8-8,8,绘,制4种三维曲面图,。,5/14/2025,34,3.,标准三维曲面,sphere,函数的调用格式为,:,x,y,z=sphere(n),cylinder,函数的调用格式为,:,x,y,z=cylinder(R,n),MATLAB还有一个peaks,函数,称为多峰函数,常用于三维曲面的演示,。,例5-19 绘制标准三维曲面图形。,5/14/2025,35,5.4.3,其他三维图形,在介绍二维图形时,曾提到条形图、杆图、饼图和填充图等特殊图形,它们还可以以三维形式出现,使用的函数分别是,bar3、stem3、pie3,和,fill3。,bar3,函数绘制三维条形图,常用格式为,:,bar3(y),bar3(x,y),5/14/2025,36,stem3,函数绘制离散序列数据的三维杆图,常,用格式为:,stem3(z),stem3(x,y,z),pie3,函数绘制三维饼图,常用格式为,:,pie3(x),fill3,函数等效于三维函数fill,可在三维空间,内绘制出填充过的多边形,常用格式为,:,fill3(x,y,z,c),5/14/2025,37,例,5-20,绘制三维图形,:,(1),绘制魔方阵的三维条形图,。,(2),以三维杆图形式绘制曲线,y=2sin(x)。,(3),已知,x=2347,1827,2043,3025,,绘制饼图,。,(4),用随机的顶点坐标值画出五个黄色三角形,。,例5-21 绘制多峰函数的瀑布图和等高线图。,5/14/2025,38,5.5,图形修饰处理,5.5.1,视点处理,MATLAB,提供了设置视点的函数,view,,其调用格式为:,view(az,el),其中,az,为方位角,,el,为仰角,它们均以度为单位。系统缺省的视点定义为方位角,-37.5,仰角,30,。,例,5.22,从四个方位来观看函数,5/14/2025,39,5.5.2,色彩处理,1.,颜色的向量表示,MATLAB,除用字符表示颜色外,还可以用含有,3,个元素的向量表示颜色。向量元素在,0,1,范围取值,,3,个元素分别表示红、绿、蓝3种颜色的相对亮度,称为,RGB,三元组,。,5/14/2025,40,若干常用色的RGB值,Red(红),Green(绿),Blue(蓝),颜 色,0,0,0,黑,1,1,1,白,1,0,0,红,0,1,0,绿,0,0,1,蓝,1,1,0,黄,1,0,1,洋红,0,1,1,青蓝,2/3,0,1,天蓝,1,1/2,0,橘黄,0.5,0,0,深红,0.5,0.5,0.5,灰色,5/14/2025,41,2.,色图,色图,(Colormap),是,MATLAB,系统引入的概念,。在MATLAB中,,每个图形窗口只能有一个色图。色图是,m3,的数值矩阵,它的每一行是,RGB,三元组。色图矩阵可以人为地生成,也可以调用,MATLAB,提供的函数来定义色图矩阵。Colormap(CM),5/14/2025,42,Matlab的预定义色图矩阵CM,CM,功 能 描 述,hsv,色彩饱和值(以红色开始和结束),hot,从黑到红到黄到白,cool,青蓝和洋红的色度,pink,粉红的彩色度,gray,线性灰度,bone,带一点蓝色的灰度,jet,hsv的一种变形(以蓝色开始和结束),copper,线性铜色度,prim,三棱镜,交替为红色、橘黄色、黄色、绿,色和天蓝色,flag,交替为红色、白色、蓝色和黑色,5/14/2025,43,3.,三维表面图形的着色,三维表面图实际上就是在网格图的每一个网格片上涂上颜色,。surf,函数用缺省的着色方式对网格片着色。除此之外,还可以用,shading,命令来改变着色方式,。,shading faceted,命令将每个网格片用其高度对应的颜色进行着色,但网格线仍保留着,其颜色是黑色。这是系统的缺省着色方式。,5/14/2025,44,shading flat,命令将每个网格片用同一个颜色进行着色,且网格线也用相应的颜色,从而使得图形表面显得更加光滑,。,shading interp,命令在网格片内采用颜色插值处理,得出的表面图显得最光滑。,例5-23 3种图形着色方式的效果展示。,5/14/2025,45,5.5.3,光照处理,MATLAB,提供了灯光设置的函数,其调用格式为:,light(color,选项,1,style,选项,2,position,选项,3),5/14/2025,46,5.5.4 图形的裁剪处理,例5-25 绘制三维曲面图,并进行插值着色处,理,裁掉图中x和y都小于0部分。,5/14/2025,47,5.6,图像处理与动画制作,5.6.1,图像处理,1.imread,和,imwrite,函数,imread,和,imwrite,函数分别用于将图像文件读入,MATLAB,工作空间,以及将图像数据和色图数据一起写入一定格式的图像文件,。MATLAB,支持多种图像文件格式,如,.bmp、.jpg、.jpeg、.tif,等,。,5/14/2025,48,2.image,和,imagesc,函数,这两个函数用于图像显示。为了保证图像的显示效果,一般还应使用,colormap,函数设置图像色图。,例,5-26,有一图像文件,flower.jpg,,在图形窗口 显示该图像。,5/14/2025,49,5.6.2,动画制作,MATLAB,提供,getframe、moviein,和,movie,函数进行动画制作。,1.moviein,函数,moviein(n),函数用来建立一个足够大的n列矩阵。该矩阵用来保存n幅画面的数据,以备播放。之所以要事先建立一个大矩阵,是为了提高程序运行速度,。,5/14/2025,50,2.getframe,函数,getframe,函数可截取一幅画面信息(称为动画中的一帧),一幅画面信息形成一个很大的列向量。显然,保存n幅图面就需一个大矩阵,。,m(:,i)=getframe,3.movie,函数,movie(m,n),函数播放由矩阵m所定义的画面n次,缺省时播放一次,。,例5-27 绘制了peaks函数曲面并且将它绕z轴旋转。,5/14/2025,51,步骤,指令例子,1,数据准备,产生自变量向量,产生相应的函数向量,t=pi*(0:100)/100,y=sin(t).*sin(9*t),2,选定图形窗及子图位置,figure(n),指定子图形的窗号,figure(n),表示第几幅图形,subplot(2,2,3),22,图的第三幅,图,subplot(1,3,2),13,图的第2幅图,3,调用高层绘图指令,plot(t,y,b-),图形用蓝色线条,4,图形注释,图名、坐标名、文字说明,title(,调制波形,)。xlabel(t),legend(),图例,,text(),文字说明,5,图形的精细修饰,利用工具或命令,set(h,MarkerSize,10),6,打印和贴图,在图形编辑状态打印或进行贴图,1.二维图形绘制的一般步骤,5/14/2025,52,步骤,指令例子,1,数据准备:,产生自变量向量,产生相应的函数向量,t=pi*(0:100)/100,x=f1(t);y=f2(t),z=f3(x,y),2,选定图形窗及子图位置,figure(n),指定子图形的窗号,figure(n),表示第几幅图形,subplot(2,2,3),22,图的第三幅图,subplot(1,3,2),13,图的第2幅图,3,调用高层绘图指令,plot3(t,y,z,b-),图形用蓝色线条,mesh(x,y,z),surf(x,y,z),4,着色、明暗、灯光等,colormap,shading,light,5,视角,view,6,图形的精细修饰,利用工具或命令,set(h,MarkerSize,10),2.三维图形绘制的一般步骤,53,3.绘制图上图,有时为了需要,需要在图上画图,可能是为了局部放大,或其他目的。,例题:,Exercise7.m,5/14/2025,54,有时为了比较,需要将几幅图形以阵列的形式画出来,这时就要用到subplot函数。,Exercise8.m,是一个2x2图形阵列的分布绘制的小程序,有时画图的时候,阵列并不是mxn这样的情况,比如说第一行是两幅图;而第二行是一幅图,这时我们就要变通的使用subplot函数了,请看,Exercise9.m,有时用subplot函数来分布图形阵列是可能图形的定位让我们感到不是很理想,这时还有一个办法可以采用,就是利用axes函数来“随心所欲”的定位。看,Exercise10.m,Exercise11.m,4.多子图的绘制,5/14/2025,55,常用的几个标注的函数是:,text;,xlabel(ylabel,zlabel);,title,在标注的时候字体,位置以及方向等可以使用,MATLAB,自己默认的,也可以自己去设定。,5.,图形标注的一些问题,5/14/2025,56,下面以,xlabel,为例,讲一下常见的几个问题:,xlabel(thit);%,标注上脚标,xlabel(Y_Lib);%,标注下脚标,花括号 的作用是使多个字符都处于相同的状态,。,xlabel(zjliu,on BBS);%,多行标注,Exercise12.m,5/14/2025,57,此课件下载可自行编辑修改,仅供参考!感谢您的支持,我们努力做得更好!谢谢,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服