第三章Matlab图形系统_第1页
第三章Matlab图形系统_第2页
第三章Matlab图形系统_第3页
第三章Matlab图形系统_第4页
第三章Matlab图形系统_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

1、第三章第三章 Matlab的图形功能的图形功能 (1)掌握)掌握图形窗口图形窗口的创建与控制,以及图形窗口的的创建与控制,以及图形窗口的基本操作基本操作;(2)熟练掌握)熟练掌握二维和三维绘图基本的命令二维和三维绘图基本的命令、着色、线型控制;、着色、线型控制;(3)初步掌握用)初步掌握用特殊的图形特殊的图形来表现特殊数据的性质,如面积图、来表现特殊数据的性质,如面积图、直方图、饼图等。直方图、饼图等。 (4)了解在)了解在极坐标、柱坐标和球坐标系极坐标、柱坐标和球坐标系下绘制图形。下绘制图形。 (5)掌握)掌握坐标轴的控制和图形标注命令坐标轴的控制和图形标注命令及其用法。及其用法。 (6)了

2、解)了解句柄图形句柄图形的概念和的概念和图形对象的结构层次图形对象的结构层次、掌握图形对、掌握图形对象象属性的获取属性的获取及利用及利用图形对象属性编辑器图形对象属性编辑器设置对象属性的方法。设置对象属性的方法。 (7)掌握用)掌握用 GUI 设计用户界面设计用户界面菜单对象菜单对象和用户界面和用户界面控制对象控制对象的方法。的方法。 一、图形窗口一、图形窗口创建图形窗口的命令为创建图形窗口的命令为figure,有两种调用格式:有两种调用格式: figure/ figure(n)也可以由菜单创建:也可以由菜单创建: File-New-Figure图形窗口的操作及控制图形窗口的操作及控制第三章第

3、三章 Matlab的图形功能的图形功能 figure(1)x=0:0.1:1;y=sin(x);plot(x,y)第三章第三章 Matlab的图形功能的图形功能 二、二维平面图形与坐标系二、二维平面图形与坐标系 1. 几个基本的绘图命令几个基本的绘图命令 a. 线性坐标曲线线性坐标曲线 plot 函数命令函数命令 plot 是是 MATLAB 二维曲线绘图中最简单、最重要、二维曲线绘图中最简单、最重要、使用最广泛的一个线性绘图函数。它可以使用最广泛的一个线性绘图函数。它可以生成线段、曲线和生成线段、曲线和参数方程曲线参数方程曲线的函数图形。的函数图形。 命令格式命令格式: : plot(y)

4、:单参数式单参数式(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,):综合调用方式综合调用方式 第三章第三章 Matlab的图形功能的图形功能 用命令用命令 plot(y)绘曲线,其中绘曲线,其中 y=5 3 4 9 0 2 3。 y=5

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 9 6 7的图形。的图形。 Y=5

6、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) 第三章第三章 Matlab的图形功能的图形功能 在在混合式混合式的命令格式的命令格式plot(X,Y)中,对中,对X和和Y而言,可分下而言,可分下列几种情况:列几种情况:如果如果 X 和和 Y 都是向量都是向量,则长度必须相等;,则长度必须相等; 如果如果 X 是向量,而是向量,而 Y 是一个矩阵是一个矩阵,X 的长度与矩阵的长度与矩阵 Y 的行数或列数相等,则它的作用是将向量的行数或列数相等,则它的作用是将向量 X 与矩阵与矩阵 Y 的的每列或每行的向量相对应作折(每

7、列或每行的向量相对应作折( 曲)线,当曲)线,当 Y 是是方阵方阵时,时,则将向量则将向量 X 与矩阵与矩阵 Y 的的列向量列向量对应作图;对应作图; 如果如果 X 是矩阵,是矩阵,Y 是向量是向量,Y 的长度等于矩阵的长度等于矩阵 X 的行的行数或列数,则将数或列数,则将 X 的每列或每行的向量与的每列或每行的向量与 Y 相对应作图。相对应作图。当当 X 是是方阵方阵时,则将时,则将 X 的各列的各列与与 Y 对应作图;对应作图; 如果如果 X 和和 Y 都是矩阵都是矩阵,且维数相同,则按,且维数相同,则按列与列列与列的对的对应方式来作图。应方式来作图。用命令用命令plot(X,Y) 绘制图

8、形。绘制图形。 x=1:length(peaks); plot(x,peaks)注意:注意: peaksz = 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) 用用plot(Z)绘制图形。绘制图形。 x=0:pi/20:2*pi; Z=sin(x)+cos(x)*i plot(Z)等价于等价于plot(real(Z),imag(Z) 用用plot(x1,y1,x2,y2,)在同一窗在同一窗口中绘制多条曲线,且坐标和口中绘制多条曲线,且坐标和长

9、度都不同。长度都不同。 t1=0:0.1:3*pi; t2=0:0.1:6; plot(t1,sin(t1),t2,sqrt(t2)b.二维函数二维函数曲线曲线专用命令专用命令 fplot用用plot绘图在确定自变量的取值间隔时,一般采用绘图在确定自变量的取值间隔时,一般采用平均间隔平均间隔,有时会因某处有时会因某处 间距太大,而间距太大,而不能反映出函数的变化不能反映出函数的变化情况。情况。fplot是绘制函数是绘制函数 y=f(x)图形的专用命令图形的专用命令,它的它的数据点是自适数据点是自适应产生的应产生的,对那些导数变化较大的函数,用,对那些导数变化较大的函数,用 fplot 函数绘出

10、函数绘出的曲线比等分取点所画出的曲线的曲线比等分取点所画出的曲线更加接近真实更加接近真实。fplot 函数命令的调用格式为:函数命令的调用格式为: X,Y=fplot(fun,lims,tol,n, linespec,p1,p2) fun:函数名字符串;函数名字符串; lims:定义定义 x 的取值区间,的取值区间,lims=xmin,xmax; tol:相对误差(默认值为相对误差(默认值为 2e-3);n:绘图的最少点数(绘图的最少点数( n+1);); linespec:线性设置;线性设置;p1,p2,:函数传递参数;函数传递参数; X,Y :数组数据点坐标。数组数据点坐标。fplot 和

11、和 plot 命令的比较。命令的比较。 ( 1)创建函数)创建函数 M 文件文件 funfplot。 function y=funfplot(x) y=sin(1./tan(pi.*x); (2)将将用用 fplot 命令求得的坐标点命令求得的坐标点按照对应大按照对应大小创建一个小创建一个等间距坐标点等间距坐标点赋值给矩阵赋值给矩阵 X,Y X,Y=fplot(funfplot,-0.1,0.1,2e-4);%只只把数据点坐标输入把数据点坐标输入 X、Y,而不显示图形。,而不显示图形。%要使用要使用 tol tol、n n 或是或是linespeclinespec的默认参数,可的默认参数,可以

12、给函数传递一个以给函数传递一个作为参数。作为参数。 x=-0.1:1/1000*pi:0.1; y=funfplot(x);( 3)用)用 plot和和fplot命令作图,比较二者的不同:命令作图,比较二者的不同: plot(x,y) figure(2) %打开一个新的图打开一个新的图形窗口形窗口 plot(X,Y) %该命令等价于该命令等价于 fplot(funfplot,-0.1,0.1,2e-4); c.c.对数坐标曲线命令对数坐标曲线命令 绘制二维对数坐标曲线的命令绘制二维对数坐标曲线的命令semilogx、semilogy 和和 loglog,其其用法和函数用法和函数 plot 相同

13、。相同。函数函数 semilogx 横坐标横坐标为对数坐标;为对数坐标;函数函数 semilogy 纵坐标纵坐标为对数坐标;为对数坐标;函数函数loglog 横、纵坐标横、纵坐标均为对数坐标。均为对数坐标。绘制正弦函数的对数坐标曲线。绘制正弦函数的对数坐标曲线。 t=0.1:0.1:3*pi; y=sin(t); figure(1) semilogx(t,y) grid on %为图形窗口添加网格 figure(2) semilogy(t,y) figure(3) loglog(t,y) d.d.双双 y 轴图形轴图形 绘制绘制左右均有左右均有 y 轴轴的图形的图形 plotyy(x1,y1,

14、x2,y2) 在窗口中同时绘制两条曲线:在窗口中同时绘制两条曲线:(x1,y1)和和(x2,y2),曲线曲线(x1,y1)用左侧的用左侧的 y 轴轴,曲,曲线线(x2,y2)用右侧的用右侧的 y 轴。轴。 plotyy(x1,y1,x2,y2, fun) fun是字符串是字符串,用来指定绘图的,用来指定绘图的函数函数名,如名,如 plot、semilogx、semilogy 等等 。plotyy(z1,y1,x2,y2, fun1, fun2) 用用fun1和和fun2指定指定不同的绘图函数不同的绘图函数分别绘制。分别绘制。 用用 plotyy plotyy 函数绘制双函数绘制双 y y 轴图

15、形。轴图形。 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 在同一图形窗口中用不同的绘图函数绘制同一函数曲线在同一图形窗口中用不同的绘图函数绘制同一函数曲线 的双的双 y 轴轴图形。图形。 x=0:0.1:6; y=sqrt(x); plotyy(x,y,x,y,semilogy,plot) plotyy 函数不能加入设置曲线线型、颜色及标出数据点的参数。函数不能加入设置曲线线型、颜色及标出数据点的参数。 xy 2.线型和颜色线型和颜色 plot 函数可以设置曲线

16、的函数可以设置曲线的线段类型、定点标记和线段颜色线段类型、定点标记和线段颜色。 常用的线段、颜色与定点标记参数常用的线段、颜色与定点标记参数 调用格式调用格式:plot(x,y,s) ,s 为类型说明参数,是字符串。为类型说明参数,是字符串。s 字符串字符串可以是三种类型的可以是三种类型的符号之一符号之一,也可以是线型与颜色和定点标记,也可以是线型与颜色和定点标记与颜色的与颜色的组合组合;如果如果没有没有 s 参数参数,plot 将使用将使用缺省设置(实线,前七种颜色顺序着色缺省设置(实线,前七种颜色顺序着色)绘制曲线;绘制曲线; 在当前坐标系中绘图时,每调入一次绘图函数,在当前坐标系中绘图时

17、,每调入一次绘图函数,MATLAB将擦掉坐标将擦掉坐标系中已有的图形对象。可以用系中已有的图形对象。可以用 hold 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) 3. 图形窗口的分割图形窗口的分割 有时需要在有时需要在一个图形窗口中显示几

18、幅图一个图形窗口中显示几幅图,以便对几个函数进行直观、,以便对几个函数进行直观、便捷的比较。由于每个绘图命令在绘制数据图像时都会将已有图形覆便捷的比较。由于每个绘图命令在绘制数据图像时都会将已有图形覆盖掉,而用盖掉,而用 hold 命令不能实现同时显示几个不同坐标尺寸下的图形,命令不能实现同时显示几个不同坐标尺寸下的图形,用用 figure 命令再创窗口又很难同时比较由不同的数据绘得的图像。命令再创窗口又很难同时比较由不同的数据绘得的图像。实现在实现在同一个窗口中同时显示多个图像同一个窗口中同时显示多个图像的命令的命令subplot。使用格式为:使用格式为: subplot(m,n,i)其含义

19、为其含义为 :把图形窗口分割为:把图形窗口分割为 m 行行 n 列子窗口列子窗口,然后选,然后选定定第第 i 个窗口为当前窗口个窗口为当前窗口。subplot 命令不仅用于命令不仅用于二维图形二维图形,对,对三维图形三维图形一样适用。其本质是将一样适用。其本质是将 figure 窗口分为几个区域窗口分为几个区域,再在每个区域内分别绘图。,再在每个区域内分别绘图。用用 subplot 函数函数把两种不同的图形综合在一个图形窗口中。把两种不同的图形综合在一个图形窗口中。 subplot(2,2,1) t=0.1:0.1:2*pi; y=sin(t); semilogx(t,y) grid on s

20、ubplot(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. 坐标系的调整坐标系的调整 实现坐标系的调整的命令是实现坐标系的调整的命令是 axis 函数。函数。 调用格式为:调用格式为: axis(xmin,xmax,ymin,ymax,zmin,zmax)坐标的最小值(坐标的最小值( xmin,ymin,zmin)必须小

21、于相应的最大值必须小于相应的最大值( xmax,ymax,zmax),),否则会出错。否则会出错。自动坐标系与用自动坐标系与用 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) 三、三、三维绘图三维绘图 1. 1. 三维三维曲线曲线绘图命令绘图命令 三维函数三维函数 plot3主要用来表现主要用来表现单参数的三维曲线单参数

22、的三维曲线,与二维绘,与二维绘图函数图函数 plot 相比,只多了相比,只多了第三维数据第三维数据。其调用格式为:其调用格式为: plot3(X1,Y1,Z1,s1,X2,Y2,Z2,s2,)或或 plot3(X,Y,Z,s)参数的含义如下:参数的含义如下: Xn、Yn、Zn:第一到三维数据,是第一到三维数据,是尺寸相等的尺寸相等的向量向量/矩阵;矩阵;s、s1、s2:是是字符串字符串,用来设置,用来设置线型、颜色、数据点线型、颜色、数据点标记。标记。X、Y、Z 是是向量时向量时,绘制以向量,绘制以向量 X、Y、Z 的的元素为元素为 x、y、z 坐标坐标的三的三维曲线。维曲线。 X、Y、Z 是

23、是矩阵时矩阵时,以,以 X、Y、Z 对应列元素为对应列元素为 x、y、z 坐标坐标分别绘制分别绘制曲线。曲线。 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) ylabel(cos(t),FontWeight,bold,FontAngle,italic) zlabel(t,FontWeight,bold,FontAngle

24、,italic) %命令命令 zlabel 用来指定用来指定 z 轴的数据名称轴的数据名称 grid onx、y、z 都是矩阵时,都是矩阵时,plot3 命令的使命令的使用用X,Y=meshgrid(-pi:0.1:pi);Z=sin(X)+cos(Y); plot3(X,Y,Z) 2.2.三维曲面绘图命令三维曲面绘图命令 为了绘制定义在平面区域为了绘制定义在平面区域 D =x0,xmD =x0,xmy0,yn y0,yn 上的上的三维三维曲面曲面z=f(x,yz=f(x,y) ) ,首先将,首先将 x0,xmx0,xm在在 x x 方向分成方向分成 m m 份,将份,将 y0,yny0,yn

25、在在 y y 方向分成方向分成 n n 份,由各划点分别作平行于坐标份,由各划点分别作平行于坐标轴的直线,将轴的直线,将区域区域 D D 分成分成 m mn n 个小矩形个小矩形;对于每个小矩;对于每个小矩形,计算出形,计算出网格点的函数值网格点的函数值,决定出空间中四个顶点,决定出空间中四个顶点( xi,yi,f(xi,yi)xi,yi,f(xi,yi)),),连接四个顶点得到一个连接四个顶点得到一个空间的四边空间的四边形片形片;所有四边形片连在一起构成函数;所有四边形片连在一起构成函数 z=f(x,y)z=f(x,y)定义在区定义在区域域 D D 上的上的空间网格曲面空间网格曲面。因此,三

26、维曲面绘图命令可分为因此,三维曲面绘图命令可分为平面网格点的生成平面网格点的生成、在平、在平面网格基础上面网格基础上绘制三维网格绘制三维网格及对及对三维表面进行处理三维表面进行处理三个步三个步骤。骤。a.平面网格点的生成平面网格点的生成函数命令函数命令meshgrid 用来生成用来生成 x-y 平面上的网格点矩阵。平面上的网格点矩阵。调用形式为:调用形式为: X,Y=meshgrid(x,y) X,Y=meshgrid(x) 等价于等价于X,Y=meshgrid(x,x) 参数含义如下:参数含义如下: x:是区间是区间x0,xm上分划的向量;上分划的向量; y:是区间是区间y0,yn上分划的向

27、量;上分划的向量; X,Y:输出变量矩阵,矩阵输出变量矩阵,矩阵 X 的行向量都是向量的行向量都是向量 x,矩矩阵阵 Y 的列向量都是向量的列向量都是向量 y。 函数函数 meshgrid 将将由两个向量决定的区域转换为对应的网格由两个向量决定的区域转换为对应的网格点矩阵。点矩阵。函数函数 ,定义区域为,定义区域为-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

28、 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.000722yxexzb.b.三维网格命令三维网格命令 mesh利用利用函数函数mesh生成网格曲面。生成网格曲面。调用格式为:调用格式为:mesh(X,Y,Z,C):X、Y、Z、C 是同维数的矩阵,是同维数的矩阵,X、Y、Z 对对应空间上的网格点,网格线颜色由应空间上的网格点,网格线颜色由C决定;决定;mesh(X,Y,Z):相当于上面的相当于上面的 C=Z 的情况

29、;的情况; mesh(x,y,Z,C):x 和和 y 是向量,是向量,Z 和和 C 是同维数的矩阵,网格是同维数的矩阵,网格曲面的网格顶点是(曲面的网格顶点是( x(j),y(i),Z(i,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

30、设置曲面属性。设置曲面属性。用用 mesh 命令绘制上例中的网格曲面。命令绘制上例中的网格曲面。 X,Y = meshgrid(-2:.2:2, -2:.2:2); Z = X .* exp(-X.2 - Y.2); mesh(Z) 与与 mesh 相关的另相关的另外两个函数是外两个函数是 meshc 和和 meshz,它们的调用形式它们的调用形式与与 mesh 相同。相同。meshc 除生成网格曲面外,还在除生成网格曲面外,还在 x-y 平面上生成曲面的平面上生成曲面的等高等高线图形线图形;meshzmeshz 除生成与除生成与 mesh mesh 相同的网格曲面外,还在相同的网格曲面外,还

31、在曲面下面加上一个曲面下面加上一个长方体的台柱长方体的台柱。比较函数比较函数 meshc 和和 meshz 。 X,Y = 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) c. 三维表面命令三维表面命令 surf函数函数 surf 可实现可实现对网格曲面片进行着色对网格曲面片进行着色,将网格曲面转化,将网格曲面转化为为实曲面实曲面。surf 命令的调用格式与命令的调用格式与 mesh 相同相同。利用三维网格表面命令利用三维网格表面命令 sur

32、f 绘制图形。绘制图形。 z=peaks; %绘制山峰的图像,将函数值赋予变量绘制山峰的图像,将函数值赋予变量z surf(z) %对山峰的图像进行着色处理对山峰的图像进行着色处理shading interp %函数函数 shading 改变着色方式改变着色方式 3.等高线图形的绘制等高线图形的绘制 函数函数 contour 和和 contour3 可绘制出二维和三维图形的等可绘制出二维和三维图形的等高线。高线。contour和和 contour3 的调用方式相同,只是的调用方式相同,只是 contour3 要绘制相应的要绘制相应的 z 轴。轴。contour调用方式:调用方式: contou

33、r(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)对应绘制的等高对应绘制的等高线条数。线条数。绘制高斯三维分布曲面的等高线及二维等高线。绘制高斯三维分布曲面的等高线及二维等高线。 contour(peaks,30) %绘

34、制二维山峰的等高线,等高线的条数为 30 contour3(peaks,20) %绘制三维山峰图像的等高线,等高线的条数为 20函数函数 clabel 标注高度值,函数标注高度值,函数contourf 绘制填充的二维等高线。绘制填充的二维等高线。 4.4.三维视图可视效果的控制三维视图可视效果的控制三维图形三维图形观察点和视觉观察点和视觉的控制的控制 view使用格式为:使用格式为: view(AZ,EL)和和 view(AZ,EL):通过方位角通过方位角AZ和俯视和俯视角角EL设置观察图形的视点。设置观察图形的视点。 view(X Y Z):通过直角坐标系设置视点;通过直角坐标系设置视点;

35、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,三维图形的透视命令三维图形的透视命令 hidden,曲面图形颜色的遮掩曲面图形颜色的遮掩 shading; 光源的建立光源的建立ligh

36、t、照明方式照明方式 lighting、控制光效果的材质命令控制光效果的材质命令 material函数函数 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 轴,FontWeight,bold) title(fontname 隶书 缺省视角) subplot(2,2,2) surf(X,Y,Z)xla

37、bel(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 轴,FontWeight,bold) title(fontname 隶书 方位角为-37.5 仰角为 80) view(-37.5,80) subplot(2,2,4

38、) surf(X,Y,Z) xlabel(X 轴,FontWeight,bold) ylabel(y 轴,FontWeight,bold) zlabel(z 轴,FontWeight,bold) title(fontname 隶书 方位角为 0 仰角为 90) view(0,90)5.柱面和球面的三维表达柱面和球面的三维表达a.柱面的表达柱面的表达cylinder cylinder命令中,命令中,柱面的轴线定义为柱面的轴线定义为 z 轴轴,只要给出,只要给出母线母线的描述就可完的描述就可完成一个柱面。成一个柱面。 调用格式为:调用格式为: X,Y,Z = cylinder(R,N)X,Y,Z

39、= 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:是旋转柱面上的分割线条数;是旋转柱面上的分割线条数; 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

40、 interpb.球面的表达球面的表达sphere 调用格式为:调用格式为: X,Y,Z=sphere(N):产生一个(产生一个( N+1)()( N+1)的矩阵,的矩阵,然后用函数然后用函数 surf 命令绘制一个命令绘制一个单位的球面,单位的球面,N 为设置分割线为设置分割线的条数的条数; X,Y,Z = sphere:缺省缺省值值 N = 20。画一个球面。画一个球面。 X,Y,Z=sphere; surf(X,Y,Z)四、特殊图形绘制四、特殊图形绘制为了将抽象的数据表达得更形象,除了绘制为了将抽象的数据表达得更形象,除了绘制二维、三维二维、三维图图形外,还要用到形外,还要用到直方图、面

41、积图、饼图直方图、面积图、饼图等特殊图形。等特殊图形。特殊图形指令特殊图形指令 1.1.面积图命令面积图命令 area 表现各个不同部分对整体所作的贡献表现各个不同部分对整体所作的贡献 area(X,Y):与与 plot 的命令的使用方法相似,的命令的使用方法相似,将连线图到将连线图到 x 轴轴的那部分填上了颜色;的那部分填上了颜色; area(Y):缺省值缺省值 X=1:SIZE(Y); area(X,Y,LEVEL)或或 area(Y,LEVEL):填色部分为填色部分为由连由连线图到线图到 y=level 的水平线的水平线之间的部分。之间的部分。绘制一面积图绘制一面积图 X=-2:2; Y

42、=3,5,2,4,1;5,4,2,3,5;3,4,5,2,1; area(X,Y) legend(因素 1,因素 2,因素 3) grid on2.2.直方图命令直方图命令 bar 直方图常用于统计数据的作图,直方图常用于统计数据的作图, 有有bar、bar3、barh 和和 bar3h几种函数,其调用格式类似。几种函数,其调用格式类似。以函数以函数 bar 为例:为例: bar(X,Y):X 是横坐标向量,是横坐标向量,Y 可以是向量或矩阵可以是向量或矩阵。Y 是是向量向量时,每时,每一个元素对应一个竖条;一个元素对应一个竖条;Y 是是 m 行行 n 列列矩阵矩阵时,将画出时,将画出 m 组

43、竖条,组竖条,每组包括每组包括 n 个竖条;个竖条; bar(Y):横坐标使用缺省值横坐标使用缺省值 X=1:M; bar(X,Y,WIDTH) 或或 bar(Y,WIDTH):用用 WIDTH 指定指定竖条的宽度竖条的宽度,如果如果 WIDTH1,条与条之间将重合。条与条之间将重合。缺省宽度为缺省宽度为 0.8; bar(.,grouped):产生缺省的产生缺省的组合组合直方图;直方图; bar(.,stacked):产生产生累积的累积的直方图;直方图; bar(.,linespec):指定指定条的颜色条的颜色;H = bar(.):返回条形图对象的返回条形图对象的句柄句柄。 用绘制直方图的

44、几种命令绘制直方图。用绘制直方图的几种命令绘制直方图。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) xlabel(x) ylabel(Sigma y) colormap(summer) subplot(2,2,4) barh(X,Y,stack

45、ed) xlabel(y);ylabel(Sigma x) colormap(summer)绘制三维直方图。绘制三维直方图。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) zlabel(y) colormap(cool) subplot(2,2,3) bar3(X,Y,stacked) ylabel(x) zlabel(Sigma y) colorma

46、p(summer) subplot(2,2,4) bar3h(X,Y,stacked) zlabel(x) ylabel(Sigma y) colormap(summer)3.3.饼图命令饼图命令 pie 饼图又叫饼图又叫扇形图扇形图,用于,用于显示向量中元素所占向量元素总和显示向量中元素所占向量元素总和的百分比的百分比。 pie 和和 pie3分别用于绘制二维和三维饼图。分别用于绘制二维和三维饼图。调用格式:调用格式: pie(X)pie(X):向量向量 X X 的饼图。把的饼图。把 X X 的每一个元素在所有元的每一个元素在所有元素总和中占的比例表达出来;素总和中占的比例表达出来; pie

47、(X,EXPLODE):向量向量EXPLODE(和向量和向量X长度相等)长度相等)用于指定饼图中用于指定饼图中抽出一部分的块抽出一部分的块(非零值对应的块非零值对应的块););pie(.,LABELS):LABELS 是用于是用于标注标注饼图的字符串数饼图的字符串数组,其长度必须和向量组,其长度必须和向量 X相等;相等; H = pie(.):返回包括返回包括饼图饼图和文本对象和文本对象句柄句柄。 用函数用函数 pie 和和 pie3 绘制饼图。绘制饼图。x=200,360,120,400,320; subplot(2,2,1),pie(x,0 0 0 1 0) subplot(2,2,2),

48、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)五、极坐标、柱坐标和球坐标系下绘制图形五、极坐标、柱坐标和球坐标系下绘制图形1.1.极坐标系下绘制图形极坐标系下绘制图形 ploar是直接在极坐标系下绘图的命令是直接在极坐标系下绘图的命令调用格式为:调用格式为: ploar(THETA, RHO,S)其中其中 S 是字符串,用来控制图形的线型。是字符串,用来控制图形的线型。绘制半径为绘制半径为 2 的渐开线。的渐开线。 rhe=2; th

49、eta=0:pi/20:4*pi; rho=rhe+theta*rhe; polar(theta,rho,r) 2.2.柱坐标系和球坐标系下绘制图形柱坐标系和球坐标系下绘制图形在在 MATLAB MATLAB 中中没有没有在柱坐标和球坐标下在柱坐标和球坐标下直接绘制直接绘制数据图形的命数据图形的命令,但令,但 pol2cart pol2cart 和和sph2cartsph2cart 命令能够将命令能够将柱坐标柱坐标和和球坐标球坐标值值转化为转化为直角坐标系下直角坐标系下的坐标值,然后在直角坐标下绘制数据图的坐标值,然后在直角坐标下绘制数据图形。形。a. pol2cart 函数函数 将柱坐标转化

50、为直角坐标,其调用格式为:将柱坐标转化为直角坐标,其调用格式为: X,Y = pol2cart(TH,R) X,Y,Z = pol2cart(TH,R,Z) 参数参数 TH 表示极坐标系下的角度向量或矩阵,表示极坐标系下的角度向量或矩阵,R 是极半径向量是极半径向量或矩阵或矩阵, ,Z 是极坐标下的高度向量或矩阵。是极坐标下的高度向量或矩阵。它们必须大小相等它们必须大小相等或成比例或成比例。X、Y、Z 为直角坐标系下的坐标向量或矩阵。为直角坐标系下的坐标向量或矩阵。 b. sph2cart b. sph2cart 命令命令将将球坐标转化直角坐标球坐标转化直角坐标,其调用格式为:,其调用格式为:

51、X,Y,Z = sph2cart(TH,PHI,R)X,Y,Z = sph2cart(TH,PHI,R) 参数参数 TH TH 为球坐标系下的方位角(为球坐标系下的方位角( Azimuth Azimuth),),PHI PHI 是球是球坐标系下的俯视角(坐标系下的俯视角( Elevation Elevation),),R R 是球半径。他们的是球半径。他们的大小必须相等或成比例大小必须相等或成比例。X X、Y Y、Z Z 为直角坐标系下的坐标为直角坐标系下的坐标向量或矩阵。向量或矩阵。 函数函数pol2cartpol2cart和和sph2cartsph2cart的用法。的用法。 theta=0

52、:pi/20:6*pi; rho=sin(theta); t,r=meshgrid(theta,rho); z=r.*t; X,Y,Z=pol2cart(t,r,z); mesh(X,Y,Z)phi=theta.2-theta; t1,p1=meshgrid(theta,phi); r1=p1.*t1; figure(2) %绘制球坐标转化直角绘制球坐标转化直角坐标时的图形坐标时的图形 X1,Y1,Z1=sph2cart(t1,p1,r1); mesh(X1,Y1,Z1) 六、坐标轴的调整和图形的标注六、坐标轴的调整和图形的标注1.1.坐标轴坐标轴调整调整命令命令2.2.图形标注图形标注a.a

53、.坐标轴和图形标题标注坐标轴和图形标题标注 标注标注坐标轴坐标轴 x、y 和和 z 的命令函数为的命令函数为 xlabel、ylabel 和和 zlabel ,调用格式为:调用格式为:xlabel(text) xlabel(text,Property1,PropertyValue1,Property2,PropertyValue2,.)H = xlabel(.) 返回坐标轴标注的返回坐标轴标注的句柄。句柄。其中,其中,text是要添加的标注文本。是要添加的标注文本。Property是文本的是文本的属性名,属性名,PropertyValue是属性值(所用字体、大小、标是属性值(所用字体、大小、标

54、注角度等)。注角度等)。a.a.图形加图形加标题标题的函数为的函数为 title,其调用格式与坐标轴标注类似。其调用格式与坐标轴标注类似。特征字符串特征字符串中的希腊字母中的希腊字母 特征字符串特征字符串中的其他字符中的其他字符 b. 图例的标注图例的标注 legend命令命令实现不同图例的说明。其调用格式为:实现不同图例的说明。其调用格式为: legend(string1,string2,string3, .) legend(string1,string2,string3,.,Pos) 按顺序按顺序把把字符串字符串添加到相应的曲线添加到相应的曲线线型符号线型符号之后;之后;Pos对图对图例的

55、位置作出设置和调整:例的位置作出设置和调整: 0 = 自动把图例置于自动把图例置于最佳位置最佳位置( 和图中曲线重复最少);和图中曲线重复最少); 1 = 置于图形窗口的置于图形窗口的右上角右上角( 缺省值);缺省值); 2 = 置于图形窗口的置于图形窗口的左上角左上角; 3 = 置于图形窗口的置于图形窗口的左下角左下角; 4 = 置于图形窗口的置于图形窗口的右下角右下角; -1 = 置于图形窗口的置于图形窗口的右侧(右侧( 外部外部)。)。 3. 控制分格线控制分格线对二维和三维图形都适用。对二维和三维图形都适用。有三种用法:有三种用法: grid on:打开打开分格线控制开关,以后绘制的图

56、形都带分格线控制开关,以后绘制的图形都带有分格线;有分格线; grid off:关闭关闭分格线控制开关,以后绘制的图形都不分格线控制开关,以后绘制的图形都不带分格线;带分格线; grid:用于用于实现分格线绘制切换实现分格线绘制切换。绘制图形,并用函数绘制图形,并用函数 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),fontsize,12,fontweight,bold) ylabel(y 轴,fontsize,12,f

57、ontweight,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 版本:,version) legend(正弦波,余弦波) figure(2) plot(t,y,:,t,y1,r*) tit

58、le(绘制正弦波和余弦波 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) text(7*pi/2,0,rightarrowcos(pi*7/2)=0) legend(正弦波,余弦波,-1) grid offGUI界面设计2.2.用户菜单对象用户菜单对象(unimenu)由由GUI 窗口上窗口上

59、【 Tools】-【 Menu Editer】命令,或者命令,或者工工具栏上的按钮具栏上的按钮,即可打开菜单编辑器。,即可打开菜单编辑器。 最上面的主要功能按钮为:最上面的主要功能按钮为: New Menu:新建一个菜单;新建一个菜单; New Menu Item:新建一个子菜单项;新建一个子菜单项; New Contextmenu:新建一个上下文新建一个上下文菜单;菜单; Delete Selected Item:删除选定的菜删除选定的菜单栏。单栏。左边窗口给出当前图形中的左边窗口给出当前图形中的菜单项列表菜单项列表,右边给出相应的,右边给出相应的对象属性对象属性,分别,分别是菜单项的是菜单

60、项的标注(标注( Label)、)、标记(标记(Tag)和回调程序(和回调程序( Callback)的内的内容。用户可直接对之进行修改和添加。容。用户可直接对之进行修改和添加。菜单对象的属性菜单对象的属性Label和和 Callback是菜单对象的是菜单对象的基本属性基本属性,编写一个具有,编写一个具有基本功能的菜单对象必须要设置基本功能的菜单对象必须要设置 Label 和和Callback 属性。属性。 Label 是在是在菜单项上显示的标注文本菜单项上显示的标注文本。可以在相应字符的。可以在相应字符的前加上符号前加上符号“&” 为为Label定义定义快捷键快捷键,以便使用组合键,以便使用组

温馨提示

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

评论

0/150

提交评论