第5章基本图形处理功能.ppt

上传人:本田雅阁 文档编号:2974469 上传时间:2019-06-16 格式:PPT 页数:63 大小:642.05KB
返回 下载 相关 举报
第5章基本图形处理功能.ppt_第1页
第1页 / 共63页
第5章基本图形处理功能.ppt_第2页
第2页 / 共63页
第5章基本图形处理功能.ppt_第3页
第3页 / 共63页
第5章基本图形处理功能.ppt_第4页
第4页 / 共63页
第5章基本图形处理功能.ppt_第5页
第5页 / 共63页
点击查看更多>>
资源描述

《第5章基本图形处理功能.ppt》由会员分享,可在线阅读,更多相关《第5章基本图形处理功能.ppt(63页珍藏版)》请在三一文库上搜索。

1、第5章 基本图形处理功能,本章目标,了解MATLAB的绘图功能 掌握二维图形和三维图形的绘制方法 能够进行常用的数据可视化处理,主要内容,5.1 二维图形 5.2 特殊图形 5.3 三维图形 5.4 图形的控制与表现,例:用简短的MATLAB命令计算并绘制在0x6范围内的sin(2x)、sin(x2)和(sin(x)2。, x = linspace(0,6); y1 = sin(2*x) ; y2 = sin(x.2); y3 = (sin(x).2; plot(x,y1,x, y2,x, y3) text(x(100),y1(100),sin(2*x); text(x(100),y2(100

2、),sin(x.2); text(x(100),y3(100),sin(x)2);,5.1 二维图形,1.二维曲线绘图 plot 最基本的二维图形指令: plot(y):绘制y的单矢量二维曲线图形 plot(x,y):绘制x,y的双矢量二维曲线图形 plot(x1,y1,):绘制x1,y1,确定的二维曲线图形,即多重曲线 plot(x1,y1,LineSpec):按照LineSpec所定义的线型、标记点和颜色绘图,plot(y):绘制单矢量曲线图,例1: y=6 4 2.3 5 8.3 11.7 15 17.7 19.4 20; plot(y),plot(x,y):绘制双矢量曲线图,例2 x=

3、0:0.05:4*pi; y=cos(x); plot(x,y) 注意:矢量x与y 必须具有 相同的长度,plot(x1,y1,):多重曲线绘图,绘制多重曲线有两种方法。 1.用一组变量x和y绘图。其中x或y是矩阵,或者两者都是矩阵。 2.用多组变量x1、y1、x2、y2、xn、yn绘图。 在绘制多重曲线时,MATLAB会按照一定的规律自动变化每条曲线的颜色。,plot(x1,y1,):多重曲线绘图,1.一组变量绘图 (1).x为矢量,y为矩阵 x=0:pi/50:2*pi; y(1,:)=sin(x); y(2,:)=0.6*sin(x); y(3,:)=0.3*sin(x); plot(x

4、,y),(2). x为矩阵,y为矢量,x(1,:)=0:pi/50:2*pi; x(2,:)=pi/4:pi/50:2*pi+pi/4; x(3,:)=pi/2:pi/50:2*pi+pi/2; y=sin(x(1,:); plot(x,y) 注意:矢量的长度必须与矩阵中的行或列的长度相等。,(3).x、y是同样大小的矩阵,绘出y中各列相对于x各列的图形,x(1,:)=0:pi/50:2*pi; x(2,:)=pi/4:pi/50:2*pi+pi/4; x(3,:)=pi/2:pi/50:2*pi+pi/2; y(1,:)=sin(x(1,:); y(2,:)=0.6*sin(x(1,:);

5、y(3,:)=0.3*sin(x(1,:); plot(x,y),x=x; y=y; plot(x,y),(4).如果x是矩阵,绘制x各列相对于行号的图形, x=3 5 7; 6 12 24 ; 15 33 6 ; 9 7 2; plot(x),2.多组变量绘图,x1=0:pi/50:2*pi; x2=0:pi/30:2*pi; x3=0:pi/15:2*pi; y1=sin(x1); y2=0.6*sin(x2); y3=0.3*sin(x3); plot(x1,y1,x2,y2,x3,y3),plot(x1,y1,LineSpec),LineSpec为所定义的线型、标记点和颜色绘图等,例:

6、在同一坐标系中绘制多个图形, x=linspace(0, 7); y1=sin(2*x); y2=sin(x.2); y3=(sin(x).2; %曲线1:红色实线,+号显示数据点 %曲线2:黑色点线,*号显示数据点 %曲线3:蓝色虚线,上三角形显示数据点 plot(x, y1, r+-, x, y2, k*:, x, y3, b-),图形的其他属性,包括设置线的宽度、标记点的边缘颜色、填充颜色及标记点的大小等其他绘图属性 线宽:LineWidth 标记点边缘颜色:MarkerEdgeColor 标记点填充颜色:MarkerFaceColor 标记点大小:MarkerSize,t=0:pi/2

7、0:pi; y=sin(4*t).*sin(t)/2; plot(t,y,-bs,LineWidth,2,. %设置线的宽度为2 MarkerEdgeColor,k,.%设置标记点边缘颜色为黑色 MarkerFaceColor,y,.%设置标记点填充颜色为黄色 MarkerSize,10) %设置标记点的尺寸为10,2.对数坐标绘图,对数坐标绘图分为: x轴对数坐标绘图(semilogx) y轴对数坐标绘图(semilogy) 双对数坐标绘图(loglog) 其调用格式与plot相似。,例:绘制线性坐标图和3种对数坐标图,y=0 0.6 2.3 5 8.3 11.7 15 17.7 19.4

8、20; subplot(2,2,1) %创建第一个子图 plot(y) title(plot(y) subplot(2,2,2) %创建第二个子图 semilogx(y) title(semilogx(y) subplot(2,2,3) %创建第三个子图 semilogy(y) title(semilogy(y) subplot(2,2,4) %创建第四个子图 loglog(y) title(loglog(y),3.极坐标绘图,极坐标绘图函数为polar,其调用格式为: polar(theta,rho):绘制由theta、rho确定的曲线。theta和rho分别表示角度和半径。 polar(t

9、heta,rho,LineSpec):按照LineSpec所定义的线型、标记点和颜色绘图,例:绘制半径为y=sin2tcos2t的极坐标图,t=0:0.01:2*pi; polar(t,sin(2*t).*cos(2*t),4.双Y轴绘图,绘制双坐标轴曲线的函数为plotyy,其调用格式为: plotyy(X1,Y1,X2,Y2):绘制由X1、Y1和X2、Y2确定的两组曲线,其中X1、Y1的坐标在左侧,X2、Y2的坐标在右侧。 plotyy(X1,Y1,X2,Y2,function):使用function指定的绘图函数绘制曲线,function可以是plot、semilogx 、semilog

10、y、loglog等。,t=0:900; A=1000; a=0.005; b=0.005; z1=A*exp(-a*t); z2=sin(b*t); plotyy(t,z1,t,z2,semilogy,plot);,例5.1:绘制曲线y=x3+x+1,x的取值范围为 -5,5, x=(-5:5); y=x.3+x+1; plot(x,y),例5.2 用不同的线型和标记点画出a=0.1、a=0.2和a=0.5三种情况下曲线y=e-at的图形, t的变化范围为010。, t=(0:10); y1=exp(-0.1*t); y2=exp(-0.2*t); y3=exp(-0.5*t); plot(t

11、,y1,-ob,t,y2,:*r,t,y3,-.g),5.2 特殊图形,5.2.1 条形图 1.二维条形图 bar(Y):绘制Y中每一(行)元素的条形图 bar(x,Y):按x指定位置绘制Y中元素的条形图 bar(.,width):设置相邻条形的宽度,默认值为0.8。如width=1,则组内的条形挨在一起 bar(,stack):在矩阵Y中每一行绘制一个条形,条形的高度为行中元素的和 bar(,LineSpec): 用LineSpec指定的颜色绘制条形图 barh():绘制水平条形图,bar(Y), x=1 2 3 5 7; y=9 8 6;2 5 8;6 2 9;5 8 7;9 4 2; s

12、ubplot(1,2,1) bar(x) subplot(1,2,2) bar(y),bar(x,Y):按x指定位置绘制Y中元素的条形图 barh(x,Y):按x指定位置绘制Y中元素的水平条形图, x=1 2 3 5 7; y=9 8 6;2 5 8;6 2 9;5 8 7;9 4 2; subplot(1,2,1) bar(x,y) subplot(1,2,2) barh(x,y),bar(,stack):在矩阵Y中每一行绘制一个条形,条形的高度为行中元素的和, y=9 8 6;2 5 8;6 2 9;5 8 7;9 4 2; subplot(1,2,1) bar(y,stack) subp

13、lot(1,2,2) barh(y ,stack),绘制两个矢量的条形图, x=0:pi/10:2*pi; y=sin(x); bar(x,y),2.三维条形图 调用函数bar3和bar3h,其用法与bar和barh基本相同,x=1 2 3 5 7; y=9 8 6;2 5 8;6 2 9;5 8 7;9 4 2; subplot(1,2,1) bar3(y) subplot(1,2,2) bar3h(x,y,stacked),5.2.2 饼图:表示各元素所占的比例,pie(X):使用X中的数据绘制饼图,X中的每个元素所占元素和的比例用饼图中的一个扇区表示。如果X的全部元素和小余1,则绘制不完

14、整的饼图。 pie(X,explode):将一些扇区从饼图中分离出来,explode为一个与X尺寸相同的矩阵,其非零元素所对应的X矩阵中的元素从饼图中分离出来。 pie3():绘制三维饼图,调用方法与pie相同。 扇区顺序按元素下标从90角位置逆时针旋转。, subplot(2,2,1) pie(1 2 4 3 5) subplot(2,2,2) pie(1 2 4 3 5,0 0 1 0 1) subplot(2,2,3) pie(0.2 0.3 0.4) subplot(2,2,4) pie3(1 2 4 3 5,0 1 0 1 0),5.3 三维绘图,MATLAB提供的函数可以绘制三维曲

15、线图、网格图(Mesh Plot)、表面图(Shaded Surface Plot)、伪彩图(Pseudcolor Plot)和等高线图(Contour)等。,5.3 三维绘图,5.3.1 三维曲线图 三维曲线图:plot3函数可以绘制三维曲线 plot3(x1, y1, z1, LineSpec ):按照LineSpec所定义的线型、标记点和颜色绘图,x1, y1和 z1为三维坐标的矢量或矩阵。,例:函数plot3绘制三维曲线图,t=0:pi/50:10*pi; plot3(t,sin(t),cos(t),r:) grid on,5.3.2 三维绘图数据的产生,peaks:创建双峰函数和用双

16、峰函数绘图。 x,y,z=peaks(n):创建x,y,z均为nn阶的方阵,x每列的元素都相同,每一行的元素均为在-3,3区间内的等分,y的行列元素与x相反,z为x和y的函数。 peaks(n):直接使用peaks函数所创建的矩阵绘制三维表面图。, x,y,z=peaks(4) x = -3 -1 1 3 -3 -1 1 3 -3 -1 1 3 -3 -1 1 3 y = -3 -3 -3 -3 -1 -1 -1 -1 1 1 1 1 3 3 3 3 z = 0.0001 -0.0299 -0.1100 -0.0000 -0.0088 1.8559 -0.2729 0.0130 -0.0137

17、 0.2289 2.4338 0.0125 0.0000 0.1099 0.1107 0.0000, peaks(5) z = 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),5.3.3 网格图,三维网格图:mesh函数绘制网格图 mesh(z) -z为nm的矩阵,x与y坐标分别为元素的行数和列数 mesh(x, y, z) -x, y, z分别为三维空间的坐标位置 MATLAB还提供了另外两个绘制网格图的函数: meshc:将网格图与等高线

18、图一起绘制 meshz:在绘制网格图的同时绘制基准平面图,例:用mesh、meshc、meshz函数绘制网格图, z=peaks(40); subplot(2,2,1) mesh(z) subplot(2,2,2) meshc(z) subplot(2,2,4) meshz(z),5.3.4 着色表面图,MATLAB提供了三个绘制着色表面图的函数: surf():绘制着色三维曲面图,用法和mesh类似。 surfc():绘制带等高线的三维表面图 surfl():控制表面图的光照效果,例:分别用surf、surfc、surfl函数绘制三维图, z=peaks(40); subplot(2,2,1

19、) surf(z); subplot(2,2,2) surfc(z); subplot(2,2,3) surfl(z),5.4 图形的控制与表现,5.4.1 图形窗口 1.在图形窗口中绘制子图形 subplot(m,n,p):将图形窗口分为mn个子窗口,并把第p个子窗口作为当前窗口。 2.保持图形 hold on:保持已绘制的图形,不清除已有的图形。 hold off:结束保持绘图, subplot(2,2,1) pie(1 2 4 3 5) subplot(2,2,2) pie(1 2 4 3 5,0 0 1 0 1) subplot(2,2,3) pie(0.2 0.3 0.4) subp

20、lot(2,2,4) pie3(1 2 4 3 5,0 1 0 1 0),5.4.2 坐标轴控制命令,axis(xmin xmax ymin ymax):指定二维图形x轴和y轴的刻度范围 axis manual:保持刻度范围不随数据的大小而变化 axis tight:以数据的大小为坐标轴的范围 axis equal:使各坐标轴刻度增量相同 axis square:使各坐标轴长度相同,但刻度增量未必相同 axis normal:自动调节轴与数据的外表比例 axis off:使坐标轴消隐,1. axis(xmin xmax ymin ymax) 改变坐标轴的范围, x=0:0.01:pi/2; p

21、lot(x,tan(x),-ro) axis(0,pi/2,0,5),2.显示比例对绘图结果的影响, t=0:pi/20:2*pi; plot(sin(t),2*cos(t) grid on axis square axis equal axis tight, t=0:pi/20:2*pi; plot(sin(t),2*cos(t) grid on axis off,5.4.3 图形的标注,1.加注坐标轴标识和图形标题 title -图形标题 xlabel -x轴标识 ylabel - y轴标识 zlabel - z轴标识,t=0:pi/100:2*pi; y=sin(t); plot(t,y

22、) axis(0 2*pi -1 1) xlabel(0 leq itt rm leq pi,FontSize,16) ylabel(sin(t),FontSize,20) title(正弦函数图形, FontName,隶书 , FontSize,20),2.在图形中加注文本,text - 在图形窗口的任何位置加注文本 gtext - 使用鼠标在指定位置加注文本,text(pi,sin(pi),leftarrowsin(t)=0,FontSize,16) text(3*pi/4,sin(3*pi/4),rightarrowsin(t)=0.707,FontSize,16),5.4.4 在图形中添加图例框,legend(字符串1,字符串2,):以字符串1,字符串2,作为图形标注的图例。 x=0:pi/10:2*pi; y1=sin(x); y2=0.6*sin(x); y3=0.3*sin(x); plot(x,y1,x,y2,-o,x,y3,-*) legend(曲线1,曲线2,曲线3),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1