matlab图形处理教程课件_第1页
matlab图形处理教程课件_第2页
matlab图形处理教程课件_第3页
matlab图形处理教程课件_第4页
matlab图形处理教程课件_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8章图形处理教学目标教学重点教学过程10/6/20231第8章图形处理第8章图形处理10/6/20231第8章图形教学目标MATLAB7语言除了有强大的矩阵处理功能之外,它的绘图功能也是相当强大的。学习完本章之后,读者将学会使用MATLAB7的图形处理功能,包括基本的绘图命令、图形的简单控制、图形窗口的编辑以及图形的高级控制等。10/6/20232第8章图形处理教学目标MATLAB7语言除了有强大的矩阵处理功能之外,它教学重点基本的绘图命令各种图形注释方法三维图形的绘制方法10/6/20233第8章图形处理教学重点基本的绘图命令10/6/20233第8章图形教学过程基本的绘图命令各种图形注释方法三维图形的绘制方法特殊一些特殊图形的绘制图形的高级控制技巧10/6/20234第8章图形处理教学过程基本的绘图命令10/6/20234第8章图形1.基本的绘图命令基本的绘图命令绘图的一般步骤绘制二维曲线图极坐标图形的绘制多个图形的绘制方法曲线的色彩、线型和数据点型10/6/20235第8章图形处理1.基本的绘图命令基本的绘图命令10/6/20235第(1)基本的绘图命令绘制基本线性图的函数表函

名功

述plot在x轴和y轴都按线性比例绘制二维图形plot3在x轴、y轴和z轴都按线性比例绘制三维图形loglog在x轴和y轴按对数比例绘制二维图形semilogx在x轴按对数比例,y轴按线性比例绘制二维图形semilogy在y轴按对数比例,x轴按线性比例绘制二维图形plotyy绘制双y轴图形10/6/20236第8章图形处理(1)基本的绘图命令绘制基本线性图的函数表函数名(2)绘图的一般步骤基本的绘图步骤步

骤典

码1.准备绘图数据x=0:0.2:12;y1=bessel(1,x);2.选择一个窗口并在窗口中给图形定位figure(1),subplot(2,2,1)3.调用基本的绘图函数h=plot(x,y1,x,y2,x,y3);4.选择线型和标记特性set(h,'LineWidth',2,{'LineStyle'},{'--';':';'-.'})5.设置坐标轴的极限值、标记符号和网格线axis([012-0.51])6.使用坐标轴标签、图例和文本对图形进行注释xlabel('Time')ylabel('Amplitude')7.输出图形print-depsc-tiff-r200myplot10/6/20237第8章图形处理(2)绘图的一般步骤基本的绘图步骤步骤典型代(3)绘制二维曲线图二维曲线图在MATLAB7中的绘制是最为简便的。如果将X轴和Y轴的数据分别保存在两个向量中,同时向量的长度完全相等,那么可以直接调用函数进行二维图形的绘制。在MATLAB7中,使用plot函数进行二维曲线图的绘制。10/6/20238第8章图形处理(3)绘制二维曲线图二维曲线图在MATLAB7中的绘制是最绘制二维曲线图>>x=0:0.01:10;>>y=tan(x);>>plot(x,y)>>10/6/20239第8章图形处理绘制二维曲线图>>x=0:0.01:10;10/6/20(4)极坐标图形的绘制MATLAB提供了polar函数来在极坐标下绘制图形:>>x=0:0.01:10;>>y1=sin(x);>>y2=cos(x-2.5);>>polar(y1,y2,'-r+')>>10/6/202310第8章图形处理(4)极坐标图形的绘制MATLAB提供了polar函数来在(5)多个图形的绘制方法subplot函数可以实现多个图形的绘制:>>x=0:.1:20;>>subplot(2,2,1)>>plot(x,sin(x));>>10/6/202311第8章图形处理(5)多个图形的绘制方法subplot函数可以实现多个图多个图形的绘制方法>>x=0:.1:20;>>subplot(2,2,2)>>plot(x,cos(x));>>10/6/202312第8章图形处理多个图形的绘制方法>>x=0:.1:20;10/6/2多个图形的绘制方法>>subplot(2,2,3)>>x=0:.1:2;>>y1=tan(x);>>plot(x,y1,'--b*');>>10/6/202313第8章图形处理多个图形的绘制方法>>subplot(2,2,3)10/6(6)曲线的色彩、线型和数据点型

曲线的色彩、线型和数据点型参数定义

号含

义数

型含

义线

型含

义b蓝色.点-实线g绿色xX符号:点线r红色++号-.点划线c篮绿色h六角星形--虚线m紫红色*星号(空白)不画线y黄色s方形

k黑色d菱形

10/6/202314第8章图形处理(6)曲线的色彩、线型和数据点型曲线的色彩、线型和数据点型2.图形注释图题的标注坐标轴的标签文本标注和交互式文本标注图例的添加坐标网格的添加使用矩形或是椭圆在图形中圈出重要部分10/6/202315第8章图形处理2.图形注释图题的标注10/6/202315第8章(1)图题的标注在MATLAB中,通常可以使用3种方式给图形添加图题:使用Insert菜单中的Title命令;使用属性编辑器(PropertyEditor);使用title函数。10/6/202316第8章图形处理(1)图题的标注在MATLAB中,通常可以使用3种方式给图图题的标注>>x=0:.1:2;>>y1=sin(x);>>y2=sin(x-0.25);>>y3=sin(x-0.5);>>plot(x,y1,'-.b',x,y2,'--r*',x,y3,'-.gh')>>title('Therethreelines')>>10/6/202317第8章图形处理图题的标注>>x=0:.1:2;10/6/202317(2)坐标轴的标签在MATLAB7中,可以使用如下3种方式给图形的坐标轴添加标签:使用Insert菜单下的Label选项;使用属性编辑器(PropertyEditor);使用MATLAB7的添加标签命令;10/6/202318第8章图形处理(2)坐标轴的标签在MATLAB7中,可以使用如下3种坐标轴的标签添加举例使用属性编辑器(PropertyEditor)添加坐标轴标签打开Tools菜单,选择EditPlot命令,激活图形编辑状态。在图形框内双击空白区域,调出属性编辑器;也可以采取在图形框内右击,从弹出的菜单中选择Properties项的方式调出属性编辑器;或者是在View菜单中选择PropertyEditor项。10/6/202319第8章图形处理坐标轴的标签添加举例使用属性编辑器(PropertyEd(3)文本标注和交互式文本标注用户可以在MATLAB7图形窗口的任意地方添加文本注释,从而更好地解释图形窗口的数据。MATLAB7提供了text函数和gtext函数来进行文本标注。其中gtext函数的使用形式更为灵活,可以实现交互式文本标注。10/6/202320第8章图形处理(3)文本标注和交互式文本标注用户可以在MATLAB7图形文本标注举例>>x=linspace(-3,5,100);>>y=cos(x);>>z=sin(x);>>plot(x,y,x,z)>>title('一条正弦曲线和一条余弦曲线')>>xlabel('x的取值范围')>>ylabel('Y和Z的值')>>10/6/202321第8章图形处理文本标注举例>>x=linspace(-3,5,100);(4)图例的添加为了更好地区分所绘制的多条曲线,可以使用图例加以说明,对它们表示的数据进行更准确的区分。可以使用如下3种方法生成图例:打开Insert菜单中并选择Legend命令;单击工具栏中的legend图标;使用legend函数。10/6/202322第8章图形处理(4)图例的添加为了更好地区分所绘制的多条曲线,可以使用图例图例的添加举例10/6/202323第8章图形处理图例的添加举例10/6/202323第8章图形处(5)坐标网格的添加在图形绘制过程中,为了精确地知道图形上某点的坐标,需要绘制坐标网格来定位,MATLAB7语言中提供了grid函数来实现这一功能:gridoff命令关闭坐标网格;gridon命令打开坐标网格gridmirror命令使用更细化的网格;grid(AX,…)命令使用AX坐标系代替当前坐标系。10/6/202324第8章图形处理(5)坐标网格的添加在图形绘制过程中,为了精确地知道图形上坐标网格的添加举例>>x=linspace(-5,5,100);>>y=x.^4+22*x.^2-6*x+10;>>plot(x,y)>>gridon>>10/6/202325第8章图形处理坐标网格的添加举例>>x=linspace(-5,5,10(6)使用矩形或是椭圆在图形中圈出重要部分

用户可以使用矩形或是椭圆在图形中圈出特别的区域,从而使得该区域能引起特别的注意。当其中的一个矩形或是椭圆被选中时,用户可以移动并改变它的大小,或是右击它,在弹出的快捷菜单中用户可以选择改变它的属性和外观。10/6/202326第8章图形处理(6)使用矩形或是椭圆在图形中圈出重要部分用户可以使用矩应用举例当右击矩形或是椭圆时,将弹出一个菜单10/6/202327第8章图形处理应用举例当右击矩形或是椭圆时,将弹出一个菜单10/6/203.三维图形的绘制MATLAB语言提供了三维图形的处理功能。与二维图形相似,绘制三维图形时可以使用MATLAB语言提供的相关函数:三维线图指令plot3三维网线图和曲面图三维网线图三维曲面图10/6/202328第8章图形处理3.三维图形的绘制MATLAB语言提供了三维图形的处理功(1)三维线图指令plot3>>%该程序用于绘制三维的螺旋曲线图>>t=0:pi/50:20*pi;>>plot3(sin(t),cos(2*t),sin(t)+cos(t))10/6/202329第8章图形处理(1)三维线图指令plot3>>%该程序用于绘制三维的(2)三维网线图使用mesh函数来绘制三维网格图形:>>z=peaks(50);>>mesh(z);>>10/6/202330第8章图形处理(2)三维网线图使用mesh函数来绘制三维网格图形:10/(3)三维曲面图可是使用surf函数来绘制三维表面图形:>>[X,Y]=meshgrid([-4:0.2:4]);>>Z=exp(-0.5*(X.^2-Y.^2));>>surf(X,Y,Z)>>10/6/202331第8章图形处理(3)三维曲面图可是使用surf函数来绘制三维表面图形:4.特殊图形的绘制条形图和面积图(BarandAreaGraphs)饼形图(PieCharts)离散型数据图方向和速度矢量图形等高线的绘制(ContourPlots)10/6/202332第8章图形处理4.特殊图形的绘制条形图和面积图(BarandAre(1)条形图和面积图条形图和面积图用于绘制向量和矩阵数据,这两种图形可以用来比较不同组数据的在总体数据中所占的比例,其中条形图适于表现离散型数据,而面积图适于表现连续型数据。函

数功

述bar绘制矩阵Y(m×n)各列的垂直条形图,各条以垂直方向显示barh绘制矩阵Y(m×n)各列的垂直条形图,各条以水平方式显示bar3绘制矩阵Y(m×n)各列的三维垂直条形图,条以垂直方向显示bar3h绘制矩阵Y(m×n)各列的三维垂直条形图,各条以水平方式显示area绘制向量的堆栈面积图10/6/202333第8章图形处理(1)条形图和面积图条形图和面积图用于绘制向量和矩阵数据,这条形图举例集合式条形图的绘制>>y=[12345678910]>>bar(y)10/6/202334第8章图形处理条形图举例集合式条形图的绘制10/6/202334第8章(2)饼形图在统计学中,人们经常要用到饼形图来表示各个统计量占总量的份额,饼形图可以显示向量或矩阵中的元素占所有元素总和的百分比,MATLAB提供了pie函数和pie3函数,分别用于绘制二维饼形图和三维饼形图。10/6/202335第8章图形处理(2)饼形图在统计学中,人们经常要用到饼形图来表示各个统计量(3)离散型数据图MATLAB7提供了一系列适于表现离散型数据的函数。其中常用的主要有stem函数、stem3函数和stairs函数。10/6/202336第8章图形处理(3)离散型数据图MATLAB7提供了一系列适于表现离散离散型数据图举例使用stem(y)函数来绘制句柄状图形。>>y=rand(20,1);>>stem(y)>>10/6/202337第8章图形处理离散型数据图举例使用stem(y)函数来绘制句柄状图形。(4)方向和速度矢量图形MATLAB7提供了一些函数用于绘制方向矢量和速度矢量图形,这些函数有compass、feather、quiver和quiver3。函

数功

述compass显示极坐标图形中的极点发散出来的矢量图feather显示从一条水平线上均匀间隔的点所发散出来的矢量图quiver显示由(u,v)矢量特定的二维矢量图

quiver3显示由(u,v,w)矢量特定的三维矢量图10/6/202338第8章图形处理(4)方向和速度矢量图形MATLAB7提供了一些函数用于方向和速度矢量图形举例用compass函数绘制矢量图形:>>w=0:0.1:6;>>z=sin(w).*exp(j*w);>>compase(z)>>10/6/202339第8章图形处理方向和速度矢量图形举例用compass函数绘制矢量图形(5)等高线的绘制等高线函数为创建、显示并标注由一个或多个矩阵确定的等值线。函

名功

述clabel使用等值矩阵生成标注,并将标注显示在当前图形contour显示矩阵Z的二维等高线图contour3显示矩阵Z的三维等高线图contourf显示矩阵Z的二维等高线图,并在各等高线之间用实体颜色填充contourc用于计算由其他等高线函数调用的等值矩阵meshc创建一个与二维等高线图匹配的网线图surfc创建一个与二维等高线图匹配的曲面图10/6/202340第8章图形处理(5)等高线的绘制等高线函数为创建、显示并标注由一个或多个等高线的绘制举例使用contour函数绘制等高线图形:>>[x,y,z]=peaks;>>contour(x,y,z)>>10/6/202341第8章图形处理等高线的绘制举例使用contour函数绘制等高线图形:10/5.图形的高级控制视点控制和图形的旋转颜色的使用颜色映像理解颜色映像使用颜色映像显示颜色映像的建立和修改光照控制10/6/202342第8章图形处理5.图形的高级控制视点控制和图形的旋转10/6/202(1)视点控制和图形的旋转为了使图形的效果更逼真,有时需要从不同的角度观看图形,MATLAB7语言提供了view、viewmtx和rotate3d等3个命令进行操作。用户可以在命令窗口中调用这3个函数。其中,view函数主要是从不同的角度观察图形;viewmtx给出指定视角的正交转换矩阵;而rotate3d函数可以让用户方便地用鼠标来适时旋转视图。10/6/202343第8章图形处理(1)视点控制和图形的旋转为了使图形的效果更逼真,有时需要视点控制举例view函数的使用:>>[X,Y]=meshgrid([-5:0.2:5]);>>Z=exp(0.5*(X.^2-Y.^2));>>surf(X,Y,Z)>>view(30,60)>>10/6/202344第8章图形处理视点控制举例view函数的使用:10/6/202344第8(2)颜色的使用颜色映像理解MATLAB7有一个叫颜色映像的数据结构来代表颜色值。颜色映像定义为一个有3列和若干行的矩阵。利用0到1之间的数,矩阵的每一行都代表了一种色彩。任一行的数字都指定了一个RGB值,即红、黄、蓝3种颜色的强度,形成一种特定的颜色。10/6/202345第8章图形处理(2)颜色的使用颜色映像理解10/6/202345第8章颜色映像理解1Red(红)Green(绿)Blue(蓝)颜

色000黑111白100红010绿001蓝110黄101洋红011青蓝2/301天蓝11/20橘黄0.500深红0.50.50.5灰色10/6/202346第8章图形处理颜色映像理解1Red(红)Green(绿)Blue(蓝)颜颜色映像理解2函

数功

述hsv色彩饱和值(以红色开始和结束)hot从黑到红到黄到白cool青蓝和洋红的色度pink粉红的彩色度gray线性灰度bone带一点蓝色的灰度jethsv的一种变形(以蓝色开始和结束)copper线性铜色度prim三棱镜,交替为红色、橘黄色、黄色、绿色和天蓝色flag交替为红色、白色、蓝色和黑色10/6/202347第8章图形处理颜色映像理解2函数功能描述hsv色彩饱和值(以颜色映像使用句colormap(M)将矩阵M作为当前图形窗口所用的颜色映像。例如,colormap(cool)装入了一个有64个输入项的cool颜色映像。colormapdefault装入了默认的颜色映像(hsv)。函数plot、plot3、contour和contour3不使用颜色映像,它们使用列在plot颜色和线形表中的颜色。而大多数其他绘图函数,比如mesh、surf、fill、pcolor和它们的各种变形函数,使用当前的颜色映像。10/6/202348第8章图形处理颜色映像使用句colormap(M)将矩阵M作为当前图形窗颜色映像显示可以用多种途径来显示一个颜色映像。其中一个方法是观察颜色映像矩阵的元素:>>hot(8)ans=0.3333

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论