版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第4章章 Matlab的图形功能的图形功能 (1)掌握掌握图形窗口图形窗口的创建与控制,以及图形窗口的的创建与控制,以及图形窗口的基本操基本操 作作; (2)熟练掌握)熟练掌握二维和三维绘图基本的命令二维和三维绘图基本的命令、着色、线型控、着色、线型控 制;制; (3)初步掌握用)初步掌握用特殊的图形特殊的图形来表现特殊数据的性质,如面来表现特殊数据的性质,如面 积图、直方图、饼图等。积图、直方图、饼图等。 (4)了解在)了解在极坐标、柱坐标和球坐标系极坐标、柱坐标和球坐标系下绘制图形。下绘制图形。 (5)掌握)掌握坐标轴的控制和图形标注命令坐标轴的控制和图形标注命令及其用法。及其用法。 (
2、6)了解)了解句柄图形句柄图形的概念和的概念和图形对象的结构层次图形对象的结构层次、掌握图、掌握图 形对象形对象属性的获取属性的获取及利用及利用图形对象属性编辑器图形对象属性编辑器设置对象属性设置对象属性 的方法。的方法。 (7)掌握用)掌握用 GUI 设计用户界面设计用户界面菜单对象菜单对象和用户界面和用户界面控制对控制对 象象的方法。的方法。 一、图形窗口一、图形窗口 创建图形窗口的命令为创建图形窗口的命令为figure,有两种调用格式:有两种调用格式: figure/ figure(n) 也可以由菜单创建:也可以由菜单创建: File-New-Figure 图形窗口的操作及控制图形窗口的
3、操作及控制 第第4章章 Matlab的图形功能的图形功能 figure(1) x=0:0.1:1; y=sin(x); plot(x,y) 第第4章章 Matlab的图形功能的图形功能 二、二维平面图形与坐标系二、二维平面图形与坐标系 1. 几个基本的绘图命令几个基本的绘图命令 a. 线性坐标曲线线性坐标曲线 plot 函数命令函数命令 plot 是是 MATLAB 二维曲线绘图中最简单、最重二维曲线绘图中最简单、最重 要、使用最广泛的一个线性绘图函数。它可以要、使用最广泛的一个线性绘图函数。它可以生成线段、生成线段、 曲线和参数方程曲线曲线和参数方程曲线的函数图形。的函数图形。 命令格式命令
4、格式: : plot(y) :单参数式(单参数式(y为纵坐标向量,横坐标为向量为纵坐标向量,横坐标为向量1 2 3 4 1 2 3 4 ) plot(x,y):参数式参数式 (x 为横坐标向量,为横坐标向量,y为纵坐标向量为纵坐标向量) plot(Y):mn 矩阵式矩阵式( (矩阵的矩阵的每列为纵坐标每列为纵坐标,横坐标为向量横坐标为向量1:1:m)m) plot(X,Y):混合式混合式 plot(Z):复向量式复向量式 plot(x1,y1,x2,y2,):综合调用方式综合调用方式 第第4章章 Matlab的图形功能的图形功能 用命令用命令 plot(y)绘曲线,其中绘曲线,其中 y=5 3
5、 4 9 0 2 3。 y=5 3 4 9 0 2 3; plot(y) 用命令用命令 plot(x,y)绘制函数绘制函数 y=cos(x)在两个周期内的图形。在两个周期内的图形。 x=0:0.01:2*pi; y=cos(x); plot(x,y) 在同一图形窗口中在同一图形窗口中用命令用命令 plot(x,y)绘出正弦余弦函数的图形。绘出正弦余弦函数的图形。 x=0:0.01:2*pi; y=sin(x);cos(x); plot(x,y) 用命令用命令plot(Y)绘制矩阵绘制矩阵 Y=5 4 3 8 9 10;3 4 4 5 8 2 ;8 12 13 21 18 25 ; 9 8 8
6、9 6 7的图形。的图形。 Y=5 4 3 8 9 10;3 4 4 5 8 2 ;8 12 13 21 18 25 ;9 8 8 9 6 7; plot(Y) 第第4章章 Matlab的图形功能的图形功能 在在混合式混合式的命令格式的命令格式plot(X,Y)中,对中,对X和和Y而言,可分下而言,可分下 列几种情况:列几种情况: 如果如果 X 和和 Y 都是向量都是向量,则长度必须相等;,则长度必须相等; 如果如果 X 是向量,而是向量,而 Y 是一个矩阵是一个矩阵,X 的长度与矩阵的长度与矩阵 Y 的行数或列数相等,则它的作用是将向量的行数或列数相等,则它的作用是将向量 X 与矩阵与矩阵
7、Y 的的 每列或每行的向量相对应作折(每列或每行的向量相对应作折( 曲)线,当曲)线,当 Y 是是方阵方阵时,时, 则将向量则将向量 X 与矩阵与矩阵 Y 的的列向量列向量对应作图;对应作图; 如果如果 X 是矩阵,是矩阵,Y 是向量是向量,Y 的长度等于矩阵的长度等于矩阵 X 的行的行 数或列数,则将数或列数,则将 X 的每列或每行的向量与的每列或每行的向量与 Y 相对应作图。相对应作图。 当当 X 是是方阵方阵时,则将时,则将 X 的各列的各列与与 Y 对应作图;对应作图; 如果如果 X 和和 Y 都是矩阵都是矩阵,且维数相同,则按,且维数相同,则按列与列列与列的对的对 应方式来作图。应方
8、式来作图。 第第4章章 Matlab的图形功能的图形功能 用命令用命令plot(X,Y) 绘制图形。绘制图形。 x=1:length(peaks); plot(x,peaks) 注意:注意: peaks 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) 第第4章章 Matlab的图形功能的图形功能 用用plot(Z)绘制图形。绘制图形。 x=0:pi/20:2*pi; Z=sin(x)+cos(x)*i plot(Z) 等价于等价于pl
9、ot(real(Z),imag(Z) 用用plot(x1,y1,x2,y2,)在同一窗在同一窗 口中绘制多条曲线,且坐标和口中绘制多条曲线,且坐标和 长度都不同。长度都不同。 t1=0:0.1:3*pi; t2=0:0.1:6; plot(t1,sin(t1),t2,sqrt(t2) 第第4章章 Matlab的图形功能的图形功能 b.二维函数二维函数曲线曲线专用命令专用命令 fplot 用用plot绘图在确定自变量的取值间隔时,一般采用绘图在确定自变量的取值间隔时,一般采用平均间隔平均间隔,有时会因,有时会因 某处某处 间距太大,而间距太大,而不能反映出函数的变化不能反映出函数的变化情况。情况
10、。fplot是绘制函数是绘制函数 y=f(x) 图形的专用命令图形的专用命令,它的它的数据点是自适应产生的数据点是自适应产生的,对那些导数变化较大的,对那些导数变化较大的 函数,用函数,用 fplot 函数绘出的曲线比等分取点所画出的曲线函数绘出的曲线比等分取点所画出的曲线更加接近真实更加接近真实。 fplot 函数命令的调用格式为:函数命令的调用格式为: X,Y=fplot(fun,lims,tol,n, linespec,p1,p2) fun:函数名字符串;函数名字符串; lims:定义定义 x 的取值区间,的取值区间,lims=xmin,xmax; tol:相对误差(默认值为相对误差(默
11、认值为 2e-3); n:绘图的最少点数(绘图的最少点数( n+1);); linespec:线性设置;线性设置; p1,p2,:函数传递参数;函数传递参数; X,Y :数组数据点坐标。数组数据点坐标。 第第4章章 Matlab的图形功能的图形功能 fplot 和和 plot 命令的比较。命令的比较。 ( 1)创建函数)创建函数 M 文件文件 funfplot。 function y=funfplot(x) y=sin(1./tan(pi.*x); (2)将将用用 fplot 命令求得的坐标点命令求得的坐标点按照对应大小创按照对应大小创 建一个建一个等间距坐标点等间距坐标点赋值给矩阵赋值给矩阵
12、 X,Y。 X,Y=fplot(funfplot,-0.1,0.1,2e-4); %只只把数据点坐标输入把数据点坐标输入 X、Y,而不显示图形。而不显示图形。 %要使用要使用 toltol、n n 或是或是linespeclinespec的默认参数,可以给的默认参数,可以给 函数传递一个函数传递一个作为参数。作为参数。 x=-0.1:1/1000*pi:0.1; y=funfplot(x); ( 3)用用 plot和和fplot命令作图,比较二者的不同:命令作图,比较二者的不同: plot(x,y) figure(2) %打开一个新的图形窗口打开一个新的图形窗口 plot(X,Y) %该命令等
13、价于该命令等价于 fplot(funfplot,-0.1,0.1,2e-4); 第第4章章 Matlab的图形功能的图形功能 c.c.对数坐标曲线命令对数坐标曲线命令 绘制二维对数坐标曲线的命令绘制二维对数坐标曲线的命令semilogx、semilogy 和和 loglog, 其其用法和函数用法和函数 plot 相同。相同。 函数函数 semilogx 横坐标横坐标为对数坐标;为对数坐标; 函数函数 semilogy 纵坐标纵坐标为对数坐标;为对数坐标; 函数函数loglog 横、纵坐标横、纵坐标均为对数坐标。均为对数坐标。 绘制正弦函数的对数坐标曲线。绘制正弦函数的对数坐标曲线。 t=0.1
14、:0.1:3*pi; y=sin(t); figure(1) semilogx(t,y) grid on %为图形窗口添加网格 figure(2) semilogy(t,y) figure(3) loglog(t,y) 第第4章章 Matlab的图形功能的图形功能 d.d.双双 y 轴图形轴图形 绘制绘制左右均有左右均有 y 轴轴的图形的图形 plotyy(x1,y1,x2,y2) 在窗口中同时绘制两条曲线:在窗口中同时绘制两条曲线:(x1,y1)和和(x2,y2),曲线曲线(x1,y1)用左侧的用左侧的 y 轴轴,曲,曲 线线(x2,y2)用右侧的用右侧的 y 轴。轴。 plotyy(x1,
15、y1,x2,y2, fun) fun是字符串是字符串,用来指定绘图的,用来指定绘图的函数函数名,如名,如 plot、semilogx、semilogy 等等 。 plotyy(z1,y1,x2,y2, fun1, fun2) 用用fun1和和fun2指定指定不同的绘图函数不同的绘图函数分别绘制。分别绘制。 用用 plotyy plotyy 函数绘制双函数绘制双 y y 轴图形。轴图形。 t1=0:0.1:3*pi; t2=0:0.1:6; y1=sin(t1); y2=sqrt(t2); plotyy(t1,y1,t2,y2,semilogx) grid on 第第4章章 Matlab的图形功
16、能的图形功能 在同一图形窗口中用不同的绘图函数绘制同一函数曲线在同一图形窗口中用不同的绘图函数绘制同一函数曲线 的双的双 y 轴轴 图形。图形。 x=0:0.1:6; y=sqrt(x); plotyy(x,y,x,y,semilogy,plot) plotyy 函数不能加入设置曲线线型、颜色及标出数据点的参数。函数不能加入设置曲线线型、颜色及标出数据点的参数。 xy 第第4章章 Matlab的图形功能的图形功能 2.线型和颜色线型和颜色 plot 函数可以设置曲线的函数可以设置曲线的线段类型、定点标记和线段颜色线段类型、定点标记和线段颜色。 常用的线段、颜色与定点标记参数常用的线段、颜色与定
17、点标记参数 调用格式调用格式:plot(x,y,s) ,s 为类型说明参数,为类型说明参数, 是字符串。是字符串。 s 字符串字符串可以是三种类型的可以是三种类型的符号之一符号之一,也可以是线型与颜色和定点标记,也可以是线型与颜色和定点标记 与颜色的与颜色的组合组合; 如果如果没有没有 s 参数参数,plot 将使用将使用缺省设置(实线,前七种颜色顺序着色缺省设置(实线,前七种颜色顺序着色) 绘制曲线;绘制曲线; 在当前坐标系中绘图时,每调入一次绘图函数,在当前坐标系中绘图时,每调入一次绘图函数,MATLAB将擦掉坐标将擦掉坐标 系中已有的图形对象。可以用系中已有的图形对象。可以用 hold
18、on 命令命令在一个坐标系中在一个坐标系中增加新的图增加新的图 形对象形对象。注意。注意MATLAB会根据新图形的大小,重新改变坐标系的比例。会根据新图形的大小,重新改变坐标系的比例。 用不同的用不同的线型和标注线型和标注来绘制两条曲线。来绘制两条曲线。 t1=0:0.1:2*pi; t2=0:0.1:6; y1=sin(t1); y2=sqrt(t2); plot(t1,y1,:hb,t2,y2,-g) 第第4章章 Matlab的图形功能的图形功能 第第4章章 Matlab的图形功能的图形功能 3. 图形窗口的分割图形窗口的分割 有时需要在有时需要在一个图形窗口中显示几幅图一个图形窗口中显示
19、几幅图,以便对几个函数进行直观、,以便对几个函数进行直观、 便捷的比较。由于每个绘图命令在绘制数据图像时都会将已有图形覆便捷的比较。由于每个绘图命令在绘制数据图像时都会将已有图形覆 盖掉,而用盖掉,而用 hold 命令不能实现同时显示几个不同坐标尺寸下的图形,命令不能实现同时显示几个不同坐标尺寸下的图形, 用用 figure 命令再创窗口又很难同时比较由不同的数据绘得的图像。命令再创窗口又很难同时比较由不同的数据绘得的图像。 实现在实现在同一个窗口中同时显示多个图像同一个窗口中同时显示多个图像的命令的命令subplot。 使用格式为:使用格式为: subplot(m,n,i) 其含义为其含义为
20、 :把图形窗口分割为:把图形窗口分割为 m 行行 n 列子窗口列子窗口,然后选,然后选 定定第第 i 个窗口为当前窗口个窗口为当前窗口。 subplot 命令不仅用于命令不仅用于二维图形二维图形,对,对三维图形三维图形一样适用。其本质是将一样适用。其本质是将 figure 窗口分为几个区域窗口分为几个区域,再在每个区域内分别绘图。,再在每个区域内分别绘图。 第第4章章 Matlab的图形功能的图形功能 用用 subplot 函数函数把两种不同的图形综合在一个图形窗口中。把两种不同的图形综合在一个图形窗口中。 subplot(2,2,1) t=0.1:0.1:2*pi; y=sin(t); se
21、milogx(t,y) grid on subplot(2,2,2) t=0:0.1:4*pi; y=sin(t); plot(t,y) subplot(2,2,3) x=1:0.01:5; y=exp(x); plotyy(x,y,x,y,semilogx,plot) subplot(2,2,4) x=1:0.1:10; y=sqrt(x); plot(x,y,:rd) 第第4章章 Matlab的图形功能的图形功能 4.4.图形标注图形标注 坐标轴和图形标题标注坐标轴和图形标题标注 标注标注坐标轴坐标轴 x、y 和和 z 的命令函数为的命令函数为 xlabel、ylabel 和和 zlabe
22、l ,调用格式为:调用格式为: xlabel(text) xlabel(text,Property1,PropertyValue1,Property2,Prope rtyValue2,.) H = xlabel(.) 返回坐标轴标注的返回坐标轴标注的句柄。句柄。 其中,其中,text是要添加的标注文本。是要添加的标注文本。Property是文本的是文本的 属性名,属性名,PropertyValue是属性值(所用字体、大小、标是属性值(所用字体、大小、标 注角度等)。注角度等)。 a.a.图形加图形加标题标题的函数为的函数为 title,其调用格式与坐标轴标注类似。其调用格式与坐标轴标注类似。
23、特征字符串特征字符串中的希腊字母中的希腊字母 第第4章章 Matlab的图形功能的图形功能 特征字符串特征字符串中的其他字符中的其他字符 第第4章章 Matlab的图形功能的图形功能 第第4章章 Matlab的图形功能的图形功能 b. 图例的标注图例的标注 legend命令命令实现不同图例的说明。其调用格式为:实现不同图例的说明。其调用格式为: legend(string1,string2,string3, .) legend(string1,string2,string3,.,Pos) 按顺序按顺序把把字符串字符串添加到相应的曲线添加到相应的曲线线型符号线型符号之后;之后;Pos对图对图 例
24、的位置作出设置和调整:例的位置作出设置和调整: 0 = 自动把图例置于自动把图例置于最佳位置最佳位置( 和图中曲线重复最少);和图中曲线重复最少); 1 = 置于图形窗口的置于图形窗口的右上角右上角( 缺省值);缺省值); 2 = 置于图形窗口的置于图形窗口的左上角左上角; 3 = 置于图形窗口的置于图形窗口的左下角左下角; 4 = 置于图形窗口的置于图形窗口的右下角右下角; -1 = 置于图形窗口的置于图形窗口的右侧(右侧( 外部外部)。)。 5. 控制分格线控制分格线 对二维和三维图形都适用。对二维和三维图形都适用。 有三种用法:有三种用法: grid on:打开打开分格线控制开关,以后绘
25、制的图形都带分格线控制开关,以后绘制的图形都带 有分格线;有分格线; grid off:关闭关闭分格线控制开关,以后绘制的图形都不分格线控制开关,以后绘制的图形都不 带分格线;带分格线; grid:用于用于实现分格线绘制切换实现分格线绘制切换。 第第4章章 Matlab的图形功能的图形功能 第第4章章 Matlab的图形功能的图形功能 绘制图形,并用函数绘制图形,并用函数 xlabel、title 和和 legend 命令进行标注。命令进行标注。 t=0:0.1:4*pi; y=sin(t); y1=cos(t); plot(t,y,:,t,y1,r*) xlabel(x 轴 (0-4pi),
26、fontsize,12,fontweight,bold) ylabel(y 轴,fontsize,12,fontweight,bold) title(绘制正弦波和余弦波 Pos=1,fontsize,10,fontweight,bold,fontangle,italic) text(pi,0,leftarrowsin(pi)=0) text(pi,-1,leftarrowcos(pi)=-1) text(pi/2,0.9,uparrowsin(pi/2)=,num2str(sin(pi/2) text(0,-0.6,绘图日期:,date) text(0,-0.8,MATLAB 版本:,vers
27、ion) legend(正弦波,余弦波) figure(2) plot(t,y,:,t,y1,r*) title(绘制正弦波和余弦波 Pos=0,fontsize,10,fontweight,bold,fontangle,italic) legend(正弦波,余弦波,0) grid on figure(3) plot(t,y,:,t,y1,r*) title(绘制正弦波和余弦波 Pos=-1,fontsize,10,fontweight,bold,fontangle,italic) 第第4章章 Matlab的图形功能的图形功能 text(7*pi/2,0,rightarrowcos(pi*7/
28、2)=0) legend(正弦波,余弦波,-1) grid off 第第4章章 Matlab的图形功能的图形功能 坐标轴的调整坐标轴的调整 1.1.坐标轴坐标轴调整调整命令命令 第第4章章 Matlab的图形功能的图形功能 2. 坐标系的调整坐标系的调整 实现坐标系的调整的命令是实现坐标系的调整的命令是 axis 函数。函数。 调用格式为:调用格式为: axis(xmin,xmax,ymin,ymax,zmin,zmax) 坐标的最小值(坐标的最小值( xmin,ymin,zmin)必须小于相应的最大值必须小于相应的最大值 ( xmax,ymax,zmax),),否则会出错。否则会出错。 自动
29、坐标系与用自动坐标系与用 axis axis 函数函数调整后的坐标系的比较。调整后的坐标系的比较。 subplot(2,1,1) t=0:0.1:4*pi; y=sin(t); plot(t,y) subplot(2,1,2) t=0:0.1:4*pi; y=sin(t); plot(t,y) axis(0,max(t),min(y),max(y) 第第4章章 Matlab的图形功能的图形功能 三、特殊图形绘制三、特殊图形绘制 为了将抽象的数据表达得更形象,除了绘制为了将抽象的数据表达得更形象,除了绘制二维、三维二维、三维图图 形外,还要用到形外,还要用到直方图、面积图、饼图直方图、面积图、饼
30、图等特殊图形。等特殊图形。 特殊图形指令特殊图形指令 第第4章章 Matlab的图形功能的图形功能 1.1.面积图命令面积图命令 area 表现各个不同部分对整体所作的贡献表现各个不同部分对整体所作的贡献 area(X,Y):与与 plot 的命令的使用方法相似,的命令的使用方法相似,将连线图将连线图 到到 x 轴轴的那部分填上了颜色;的那部分填上了颜色; area(Y):缺省值缺省值 X=1:SIZE(Y); area(X,Y,LEVEL)或或 area(Y,LEVEL):填色部分为填色部分为由连由连 线图到线图到 y=level 的水平线的水平线之间的部分。之间的部分。 绘制一面积图绘制一
31、面积图 X=-2:2; Y=3,5,2,4,1;5,4,2,3,5;3,4,5,2,1; area(X,Y) legend(因素 1,因素 2,因素 3) grid on 第第4章章 Matlab的图形功能的图形功能 2.2.直方图命令直方图命令 bar 直方图常用于统计数据的作图,直方图常用于统计数据的作图, 有有bar、bar3、barh 和和 bar3h几种函数,其调用格式类似。几种函数,其调用格式类似。 以函数以函数 bar 为例:为例: bar(X,Y):X 是横坐标向量,是横坐标向量,Y 可以是向量或矩阵可以是向量或矩阵。Y 是是向量向量时,每时,每 一个元素对应一个竖条;一个元素
32、对应一个竖条;Y 是是 m 行行 n 列列矩阵矩阵时,将画出时,将画出 m 组竖条,组竖条, 每组包括每组包括 n 个竖条;个竖条; bar(Y):横坐标使用缺省值横坐标使用缺省值 X=1:M; bar(X,Y,WIDTH) 或或 bar(Y,WIDTH):用用 WIDTH 指定指定竖条的宽度竖条的宽度, 如果如果 WIDTH1,条与条之间将重合。条与条之间将重合。缺省宽度为缺省宽度为 0.8; bar(.,grouped):产生缺省的产生缺省的组合组合直方图;直方图; bar(.,stacked):产生产生累积的累积的直方图;直方图; bar(.,linespec):指定指定条的颜色条的颜色
33、; H = bar(.):返回条形图对象的返回条形图对象的句柄句柄。 第第4章章 Matlab的图形功能的图形功能 用绘制直方图的几种命令绘制直方图。用绘制直方图的几种命令绘制直方图。 X=-2:2; Y=3,5,2,4,1;5,4,2,3,5;3,4,5,2,1; subplot(2,2,1) bar(X,Y,r) xlabel(x) ylabel(y) colormap(cool) subplot(2,2,2) barh(X,Y,grouped) xlabel(y) ylabel(x) colormap(cool) subplot(2,2,3) bar(X,Y,stacked) xlabe
34、l(x) ylabel(Sigma y) colormap(summer) subplot(2,2,4) barh(X,Y,stacked) xlabel(y);ylabel(Sigma x) colormap(summer) 第第4章章 Matlab的图形功能的图形功能 绘制三维直方图。绘制三维直方图。 X=-2:2; Y=3,5,2,4,1;5,4,2,3,5;3,4,5,2,1; subplot(2,2,1) bar3(X,Y,r) zlabel(y) ylabel(x) colormap(cool) subplot(2,2,2) bar3h(X,Y,grouped) ylabel(x)
35、 zlabel(y) colormap(cool) subplot(2,2,3) bar3(X,Y,stacked) ylabel(x) zlabel(Sigma y) colormap(summer) subplot(2,2,4) bar3h(X,Y,stacked) zlabel(x) ylabel(Sigma y) colormap(summer) 第第4章章 Matlab的图形功能的图形功能 3.3.饼图命令饼图命令 pie 饼图又叫饼图又叫扇形图扇形图,用于,用于显示向量中元素所占向量元素总和显示向量中元素所占向量元素总和 的百分比的百分比。 pie 和和 pie3分别用于绘制二维和
36、三维饼图。分别用于绘制二维和三维饼图。 调用格式:调用格式: pie(X)pie(X):向量向量 X X 的饼图。把的饼图。把 X X 的每一个元素在所有元的每一个元素在所有元 素总和中占的比例表达出来;素总和中占的比例表达出来; pie(X,EXPLODE):向量向量EXPLODE(和向量和向量X长度相等)长度相等) 用于指定饼图中用于指定饼图中抽出一部分的块抽出一部分的块(非零值对应的块非零值对应的块);); pie(.,LABELS):LABELS 是用于是用于标注标注饼图的字符串数饼图的字符串数 组,其长度必须和向量组,其长度必须和向量 X相等;相等; H = pie(.):返回包括返
37、回包括饼图饼图和文本对象和文本对象句柄句柄。 用函数用函数 pie 和和 pie3 绘制饼图。绘制饼图。 x=200,360,120,400,320; subplot(2,2,1), pie(x,0 0 0 1 0) subplot(2,2,2), pie3(x,0 0 0 1 0) subplot(2,2,3), pie(x(2:5) subplot(2,2,4), x=0.1,0.12,0.21,0.34,0.11; pie3(x ,A,B,C,D,E) 第第4章章 Matlab的图形功能的图形功能 第第4章章 Matlab的图形功能的图形功能 四、四、三维绘图三维绘图 1. 1. 三维三
38、维曲线曲线绘图命令绘图命令 三维函数三维函数 plot3主要用来表现主要用来表现单参数的三维曲线单参数的三维曲线,与二维绘,与二维绘 图函数图函数 plot 相比,只多了相比,只多了第三维数据第三维数据。 其调用格式为:其调用格式为: plot3(X1,Y1,Z1,s1,X2,Y2,Z2,s2,)或或 plot3(X,Y,Z,s) 参数的含义如下:参数的含义如下: Xn、Yn、Zn:第一到三维数据,是第一到三维数据,是尺寸相等的尺寸相等的向量向量/矩阵;矩阵; s、s1、s2:是是字符串字符串,用来设置,用来设置线型、颜色、数据点线型、颜色、数据点标记。标记。 X、Y、Z 是是向量时向量时,绘
39、制以向量,绘制以向量 X、Y、Z 的的元素为元素为 x、y、z 坐标坐标的三的三 维曲线。维曲线。 X、Y、Z 是是矩阵时矩阵时,以,以 X、Y、Z 对应列元素为对应列元素为 x、y、z 坐标坐标分别绘制分别绘制 曲线。曲线。 第第4章章 Matlab的图形功能的图形功能 x、y、z 是向量时,是向量时,plot3 命令的使用命令的使用 t=0:0.1:8*pi; plot3(sin(t),cos(t),t) title(绘制螺旋线) %用命令用命令 title 对图形主题进行标注对图形主题进行标注 xlabel(sin(t),FontWeight,bold,FontAngle,italic)
40、 ylabel(cos(t),FontWeight,bold,FontAngle,italic) zlabel(t,FontWeight,bold,FontAngle,italic) %命令命令 zlabel 用来指定用来指定 z 轴的数据名称轴的数据名称 grid on x、y、z 都是矩阵时,都是矩阵时,plot3 命令的使用命令的使用 X,Y=meshgrid(-pi:0.1:pi); Z=sin(X)+cos(Y); plot3(X,Y,Z) 第第4章章 Matlab的图形功能的图形功能 2.2.三维曲面绘图命令三维曲面绘图命令 为了绘制定义在平面区域为了绘制定义在平面区域 D =x0
41、,xmD =x0,xmy0,yn y0,yn 上的上的三维三维 曲面曲面z=f(x,yz=f(x,y) ) ,首先将,首先将 x0,xmx0,xm在在 x x 方向分成方向分成 m m 份,将份,将 y0,yny0,yn在在 y y 方向分成方向分成 n n 份,由各划点分别作平行于坐标份,由各划点分别作平行于坐标 轴的直线,将轴的直线,将区域区域 D D 分成分成 m mn n 个小矩形个小矩形;对于每个小矩;对于每个小矩 形,计算出形,计算出网格点的函数值网格点的函数值,决定出空间中四个顶点,决定出空间中四个顶点 ( xi,yi,f(xi,yi)xi,yi,f(xi,yi)),),连接四个
42、顶点得到一个连接四个顶点得到一个空间的四边空间的四边 形片形片;所有四边形片连在一起构成函数;所有四边形片连在一起构成函数 z=f(x,y)z=f(x,y)定义在区定义在区 域域 D D 上的上的空间网格曲面空间网格曲面。 因此,三维曲面绘图命令可分为因此,三维曲面绘图命令可分为平面网格点的生成平面网格点的生成、在平、在平 面网格基础上面网格基础上绘制三维网格绘制三维网格及对及对三维表面进行处理三维表面进行处理三个步三个步 骤。骤。 a.平面网格点的生成平面网格点的生成 函数命令函数命令meshgrid 用来生成用来生成 x-y 平面上的网格点矩阵。平面上的网格点矩阵。 调用形式为:调用形式为
43、: X,Y=meshgrid(x,y) X,Y=meshgrid(x) 等价于等价于X,Y=meshgrid(x,x) 参数含义如下:参数含义如下: x:是区间是区间x0,xm上分划的向量;上分划的向量; y:是区间是区间y0,yn上分划的向量;上分划的向量; X,Y:输出变量矩阵,矩阵输出变量矩阵,矩阵 X 的行向量都是向量的行向量都是向量 x,矩矩 阵阵 Y 的列向量都是向量的列向量都是向量 y。 函数函数 meshgrid 将将由两个向量决定的区域转换为对应的网格由两个向量决定的区域转换为对应的网格 点矩阵。点矩阵。 第第4章章 Matlab的图形功能的图形功能 第第4章章 Matlab
44、的图形功能的图形功能 函数函数 ,定义区域为,定义区域为-2,2-2,2。生成网格生成网格 并并计算其网格点上的函数值。计算其网格点上的函数值。 X,Y = meshgrid(-2:2:2, -2:2:2); X,Y %将划分结果输出至矩阵将划分结果输出至矩阵 ans = -2 0 2 -2 -2 -2 -2 0 2 0 0 0 -2 0 2 2 2 2 Z = X .* exp(-X.2 - Y.2); %计算网格点上的函数值赋予变量计算网格点上的函数值赋予变量 Z Z = -0.0007 0 0.0007 -0.0366 0 0.0366 -0.0007 0 0.0007 22 yx ex
45、z 第第4章章 Matlab的图形功能的图形功能 b.b.三维网格命令三维网格命令 mesh 利用利用函数函数mesh生成网格曲面。生成网格曲面。 调用格式为:调用格式为: mesh(X,Y,Z,C):X、Y、Z、C 是同维数的矩阵,是同维数的矩阵,X、Y、Z 对对 应空间上的网格点,网格线颜色由应空间上的网格点,网格线颜色由C决定;决定; mesh(X,Y,Z):相当于上面的相当于上面的 C=Z 的情况;的情况; mesh(x,y,Z,C):x 和和 y 是向量,是向量,Z 和和 C 是同维数的矩阵,网格是同维数的矩阵,网格 曲面的网格顶点是(曲面的网格顶点是( x(j),y(i),Z(i,
46、j)),),网格线的颜色由矩阵网格线的颜色由矩阵 C 决决 定;定; mesh(x,y,Z):相当于上面的相当于上面的 C=Z 的情况;的情况; mesh(Z,C):等价于等价于 mesh(x,y,Z,C),此时向量此时向量x=1:n,向量向量 y=1:m; mesh(Z):相当于上面的相当于上面的 C=Z 的情况的情况 mesh(.,PropertyName,PropertyValue,.):给函给函mesh设置曲面属性。设置曲面属性。 第第4章章 Matlab的图形功能的图形功能 用用 mesh 命令绘制上例中的网格曲面。命令绘制上例中的网格曲面。 X,Y = meshgrid(-2:.2
47、:2, -2:.2:2); Z = X .* exp(-X.2 - Y.2); mesh(Z) 与与 mesh 相关的相关的 另外两个函数是另外两个函数是 meshc 和和 meshz, 它们的调用形式它们的调用形式 与与 mesh 相同。相同。 meshc 除生成网格曲面外,还在除生成网格曲面外,还在 x-y 平面上生成曲面的平面上生成曲面的等高等高 线图形线图形;meshzmeshz 除生成与除生成与 mesh mesh 相同的网格曲面外,还在相同的网格曲面外,还在 曲面下面加上一个曲面下面加上一个长方体的台柱长方体的台柱。 比较函数比较函数 meshc 和和 meshz 。 X,Y =
48、meshgrid(-2:.2:2, -2:.2:2); Z = X .* exp(-X.2 - Y.2); Subplot(2,1,1) meshc(Z) subplot(2,1,2) meshz(Z) 第第4章章 Matlab的图形功能的图形功能 第第4章章 Matlab的图形功能的图形功能 c. 三维表面命令三维表面命令 surf 函数函数 surf 可实现可实现对网格曲面片进行着色对网格曲面片进行着色,将网格曲面转化,将网格曲面转化 为为实曲面实曲面。surf 命令的调用格式与命令的调用格式与 mesh 相同相同。 利用三维网格表面命令利用三维网格表面命令 surf 绘制图形。绘制图形。
49、 z=peaks; %绘制山峰的图像,将函数值赋予变量绘制山峰的图像,将函数值赋予变量z surf(z) %对山峰的图像进行着色处理对山峰的图像进行着色处理 shading interp %函数函数 shading 改变着色方式改变着色方式 第第4章章 Matlab的图形功能的图形功能 3.等高线图形的绘制等高线图形的绘制 函数函数 contour 和和 contour3 可绘制出二维和三维图形的等可绘制出二维和三维图形的等 高线。高线。contour和和 contour3 的调用方式相同,只是的调用方式相同,只是 contour3 要绘制相应的要绘制相应的 z 轴。轴。 contour调用方
50、式:调用方式: contour(Z):直接绘制矩阵直接绘制矩阵 Z 的等高线;的等高线; contour(X,Y,Z):用用 X 和和 Y 指定等高线的指定等高线的 x、y 坐标;坐标; contour(Z,n) 和和 contour(X,Y,Z,n):绘制绘制 n 条等高线;条等高线; contour(Z,V) 和和 contour(X,Y,Z,V):向量向量 V 的元素指的元素指 定等高线的位置,该向量长度定等高线的位置,该向量长度 length(V)对应绘制的等高对应绘制的等高 线条数。线条数。 第第4章章 Matlab的图形功能的图形功能 绘制高斯三维分布曲面的等高线及二维等高线。绘制
51、高斯三维分布曲面的等高线及二维等高线。 contour(peaks,30) %绘制二维山峰的等高线,等高线的条数为 30 contour3(peaks,20) %绘制三维山峰图像的等高线,等高线的条数为 20 函数函数 clabel 标注高度值,函数标注高度值,函数contourf 绘制填充的二维等高线。绘制填充的二维等高线。 4.4.三维视图可视效果的控制三维视图可视效果的控制 三维图形三维图形观察点和视觉观察点和视觉的控制的控制 view 使用格式为:使用格式为: view(AZ,EL)和和 view(AZ,EL):通过方位角通过方位角AZ和俯视角和俯视角 EL设置观察图形的视点。设置观察
52、图形的视点。 view(X Y Z):通过直角坐标系设置视点;通过直角坐标系设置视点; AZ,EL = view:返回当前的方位角返回当前的方位角 AZ 和俯视角和俯视角 EL; view(T):用一个用一个 44 的转矩阵的转矩阵 T 来设置视角;来设置视角; T=view:返回当前的返回当前的 44 的转矩阵。的转矩阵。 view(2) :设置:设置缺省的二维视角缺省的二维视角AZ = 0, EL = 90。 view(3) :设置:设置缺省的三维视角缺省的三维视角AZ = -37.5,EL = 30。 三维图形的照相三维图形的照相 campos,三维图形的透视命令三维图形的透视命令 hi
53、dden,曲面图形颜色的遮掩曲面图形颜色的遮掩 shading; 光源的建立光源的建立light、照明方式照明方式 lighting、控制光效果的材质命令控制光效果的材质命令 material 第第4章章 Matlab的图形功能的图形功能 函数函数 view 的用法。的用法。 X,Y=meshgrid(-8:0.5:8); R=sqrt(X.2+Y.2)+eps; Z=sin(R)./R; subplot(2,2,1) %缺省视角缺省视角 surf(X,Y,Z) xlabel(X 轴,FontWeight,bold) ylabel(y 轴,FontWeight,bold) zlabel(z 轴
54、,FontWeight,bold) title(fontname 隶书 缺省视角) subplot(2,2,2) surf(X,Y,Z) xlabel(X 轴,FontWeight,bold) ylabel(y 轴,FontWeight,bold) zlabel(z 轴,FontWeight,bold) title( fontname 隶书 方位角为 90仰角为 0) view(90,0) subplot(2,2,3) surf(X,Y,Z) xlabel(X 轴,FontWeight,bold) ylabel(y 轴,FontWeight,bold) zlabel(z 轴,FontWeigh
55、t,bold) title(fontname 隶书 方位角为-37.5 仰角为 80) view(-37.5,80) 第第4章章 Matlab的图形功能的图形功能 subplot(2,2,4) surf(X,Y,Z) xlabel(X 轴,FontWeight,bold) ylabel(y 轴,FontWeight,bold) zlabel(z 轴,FontWeight,bold) title(fontname 隶书 方位角为 0 仰角为 90) view(0,90) 第第4章章 Matlab的图形功能的图形功能 5.柱面和球面的三维表达柱面和球面的三维表达 a.柱面的表达柱面的表达cylin
56、der cylinder命令中,命令中,柱面的轴线定义为柱面的轴线定义为 z 轴轴,只要给出,只要给出母线母线的描述就可完的描述就可完 成一个柱面。成一个柱面。 调用格式为:调用格式为: X,Y,Z = cylinder(R,N)X,Y,Z = cylinder(R,N); X,Y,Z = cylinder(R)X,Y,Z = cylinder(R):缺省值缺省值 N=20N=20; X,Y,Z = cylinderX,Y,Z = cylinder:缺省值缺省值 N=20N=20,R=1R=1,11。 R R:是一描述柱面母线的向量;是一描述柱面母线的向量; N N:是旋转柱面上的分割线条数;
57、是旋转柱面上的分割线条数; X X,Y Y,Z Z :是返回的是返回的x x,y y,z z坐标向量。坐标向量。 绘制一个柱面。绘制一个柱面。 t=pi:0.01:3*pi; r=sin(t)+t; cylinder(r,30) shading interp 第第4章章 Matlab的图形功能的图形功能 b.球面的表达球面的表达sphere 调用格式为:调用格式为: X,Y,Z=sphere(N):产生一个(产生一个( N+1)()( N+1)的矩阵,的矩阵, 然后用函数然后用函数 surf 命令绘制一个命令绘制一个单位的球面,单位的球面,N 为设置分割线为设置分割线 的条数的条数; X,Y,Z = sphere:缺省缺省 值值
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨部门协作流程框架指南
- 关于供应链优化项目启动的通知4篇
- 生命至上安全意识从这里开始一年级主题班会课件
- 安全第一校园生活小卫士小学主题班会课件
- 心理健康关注:学会情绪管理的方法小学主题班会课件
- 2026年长沙市岳麓区事业单位人员招聘考试备考题库及答案详解
- 2026年云南省事业单位人员招聘考试参考题库及答案详解
- 2026年思茅地区事业单位人员招聘笔试模拟试题及答案详解
- 2026年天津市河东区事业单位人员招聘笔试参考试题及答案详解
- 提升心理健康,拥抱阳光成长几年级主题班会课件
- 2025年高职院校基建处招聘面试官提问技巧与答案解析
- 山东省菏泽市2024-2025学年高一下学期教学质量检测(期末)化学试卷(含答案)
- 诉讼保全险培训课件
- 2025年天津市中考数学真题 (原卷版)
- 2025年广东省中考地理试题卷(标准含答案)
- 管理者绩效管理培训课件
- 山东2023年夏季高中历史学业水平合格考试卷真题(精校打印)
- CJ/T 43-2005水处理用滤料
- 贵州省黔东南州2024-2025学年高二下物理期末达标检测试题含解析
- 方言文化生态与多样性维护-洞察阐释
- T-CESA 1281-2023 制造业企业质量管理能力评估规范
评论
0/150
提交评论