第4章 Matlabl的图形功能 3等高线图形的绘制 函数 contour和 contour3可绘制出二维和三维图形的等 高线。c0 ntour和 contour3的调用方式相同,只是 contour要绘制相应的z轴。 contour调用方式: contour(:直接绘制矩阵Z的等高线; contour(X,Y,Z):用X和Y指定等高线的x、y坐标; > contour(Z,n)和 contour(X,Y,Z,n):绘制n条等高线; > contour(Zv)和 contour(X,Y,Z,V):向量Ⅴ的元素指 定等高线的位置,该向量长度 ength(V对应绘制的等高 线条数
第4章 Matlab的图形功能 3.等高线图形的绘制 函数 contour 和 contour3 可绘制出二维和三维图形的等 高 线。 contour和 contour3 的调 用方 式相 同,只 是 contour3 要绘制相应的 z 轴。 contour调用方式: ➢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章 Matlabl的图形功能 绘制高斯三维分布曲面的等高线及二维等高线。 contour( peaks,30)%绘制二维山峰的等高线,等高线的条数为30 contour3( peaks,20)%绘制三维山峰图像的等高线,等高线的条数为20 函数 clabe标注高度值,函数 contour绘制填充的二维等高线
第4章 Matlab的图形功能 绘制高斯三维分布曲面的等高线及二维等高线。 contour(peaks,30) %绘制二维山峰的等高线,等高线的条数为 30 contour3(peaks,20) %绘制三维山峰图像的等高线,等高线的条数为 20 函数 clabel 标注高度值,函数contourf 绘制填充的二维等高线
第4章 Matlabl的图形功能 4.三维视图可视效果的控制 三维图形观察点和视觉的控制vew 使用格式为: >view(AZ,EL和view(AZ,EL):通过方位角AZ和俯视角 EL设置观察图形的视点 view(XYZ):通过直角坐标系设置视点; >|AZ,EL=view:返回当前的方位角AZ和俯视角EL; >view(T):用一个4×4的转矩阵T来设置视角; T=view:返回当前的4×4的转矩阵。 view(2):设置缺省的二维视角AZ=0,EL=90。 (3):设置缺省的三维视角AZ=-375,EL=30 三维图形的照相 campos,三维图形的透视命令 hidden,曲面图形颜色的遮掩 shading;光源的建立igh、照明方式 lighting、控制光效果的材质命令 materia
4.三维视图可视效果的控制 三维图形观察点和视觉的控制view 使用格式为: ➢view(AZ,EL)和 view([AZ,EL]):通过方位角AZ和俯视角 EL设置观察图形的视点。 ➢view([X Y Z]):通过直角坐标系设置视点; ➢[AZ,EL] = view:返回当前的方位角 AZ 和俯视角 EL; ➢view(T):用一个4×4 的转矩阵 T 来设置视角; ➢T=view:返回当前的 4×4 的转矩阵。 view(2) :设置缺省的二维视角AZ = 0, EL = 90。 view(3) :设置缺省的三维视角AZ = -37.5,EL = 30。 三维图形的照相 campos,三维图形的透视命令 hidden,曲面图形颜色的遮掩 shading; 光源的建立light、照明方式lighting、控制光效果的材质命令 material 第4章 Matlab的图形功能
第4章 Matla bl的图形功能 快省视角 文位角为90·仰角为0° 函数vew的用法。 TX,YFmeshgrid (-8:0.5: 8) R=sqrt(X. 2+Y. 2)+eps Z=sin(R)./R; subplot(2,2,1)%缺省视角 surf(X,Y,z) -0.5 xlabel(X轴 Font Weight', bold") y轴10-10x轴 ylabel('y tt, Font Weight, bold") 文位角为-37.5°即角为80° ⑦角为 即角为90° zlabel 'z #i', Font Weight, bold,) title(fontname{隶书}缺省视角) subplot(2, 2, 2) xlabel(X #',' Font Weight, bold,) ylabelc'y tt, Font Weight, bold,) zlabel'z tt,' Font Weight,'bold' 轴 le( fontname{隶书}方位角为90°仰角为0 1010X轴 vew90.0) X轴 subplot(2, 2, 4) subplot(2, 2, 3) surf(X,Y, z) surf(X,Y, Z) xlabel,X t', Font Weight, bold,) xlabel('X Ht, Font Weight, bold ylabelcy t', Font Weight, bold ") bery轴;' Font Weight;“bold") zlabeld'z #i', Font Weight, bold) zlabeld'z轴 Font Weight',bol) title('\fontname(隶书方位角为375°仰角为80°)|vew090 title('lfontname{隶书}方位角为0°仰角为90° vew(-37.580)
函数 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) 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 轴','FontWeight','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章 Matlabl的图形功能 5柱面和球面的三维表达 a柱面的表达 cylinder cylinder命令中,柱面的轴线定义为z轴,只要给出母线的描述就可完 成一个柱面 调用格式为: >X, Y, Z]= cylinder(R, N); [X,Y,2]= cylinder(R):缺省值N=20; [X,Y,Z]= cylinder:缺省值N=20,R=[1,1]。 R:是一描述柱面母线的向量; N:是旋转柱面上的分割线条数; [X,Y,Z]:是返回的x,y,z坐标向量。 绘制一个柱面。 tpi 0.01:3 pi; rsin(t)+t cylinder(r, 30) shading interp
第4章 Matlab的图形功能 5.柱面和球面的三维表达 a.柱面的表达cylinder cylinder命令中,柱面的轴线定义为z 轴,只要给出母线的描述就可完 成一个柱面。 调用格式为: ➢[X,Y,Z] = cylinder(R,N); ➢[X,Y,Z] = cylinder(R):缺省值 N=20; ➢[X,Y,Z] = cylinder:缺省值 N=20,R=[1,1]。 R:是一描述柱面母线的向量; N:是旋转柱面上的分割线条数; [X,Y,Z] :是返回的x,y,z坐标向量。 绘制一个柱面。 t=pi:0.01:3*pi; r=sin(t)+t; cylinder(r,30) shading interp
第4章 Matlabl的图形功能 b球面的表达 sphere 调用格式为: >X,Y,Zl= sphere(N):产生一个(N+1)×(N+1)的矩阵 然后用函数sur命令绘制一个单位的球面,N为设置分割线 的条数 >X,Y,Z= sphere:缺省 值N=20 05 画一个球面。 IXY,Zsphere 0.5 surf(X,Y, 2)
第4章 Matlab的图形功能 b.球面的表达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)
第4章 Matlabl的图形功能 四、特殊图形绘制 为了将抽象的数据表达得更形象,除了绘制二维、三维图 形外,还要用到直方图、面积图、饼图等特殊图形。 殊图形指 函数名称 功能 函数名称功能 面积图 com pSS 指针图 b ar 竖直的直方图 Hist 向量的统计直方图 barh 水平直方图 pareto 带有标准的直方图 bars 三维竖直直方图 pie 二维饼图 Abarth 三维水平直方图 pie 三维饼图 gplot 拓朴图 plotmatrix矩阵折(曲)线图 comet 彗星轨迹状的图形 ribbon 带状图 errorbar 误差棒图 scatter 散点图 ezplot 符号函数二维曲线图 stem 火柴杆图 olar 极坐标曲线图 stem 3 三维火柴杆图 feather 羽毛图 stairs 阶梯图
第4章 Matlab的图形功能 四、特殊图形绘制 为了将抽象的数据表达得更形象,除了绘制二维、三维图 形外,还要用到直方图、面积图、饼图等特殊图形。 特殊图形指令
第4章 Matlabl的图形功能 1.面积图命令area 表现各个不同部分对整体所作的贡献 >area(X,Y):与plot的命令的使用方法相似,将连线图 到x轴的那部分填上了颜色; >area(Y):缺省值X=1:SIE(Y); >area(X,Y,LEⅤED)或area(Y, LEVEL:填色部分为由连 线图到y=evel的水平线之间的部分。 绘制一面积图 X=-2:2 Y=[3,5,24,154,2,3,5:345,2,1] area(X,Y) legend(因素1;因素2;因素3) grid on
第4章 Matlab的图形功能 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=[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章 Matlabl的图形功能 2.直方图命令bar 直方图常用于统计数据的作图,有bar、bar3、barh和 bar3h几种函数,其调用格式类似。 以函数bar为例: >bar(X,Y):X是横坐标向量,Y可以是向量或矩阵。Y是向量时,每 个元素对应一个竖条;Y是m行n列矩阵时,将画出m组竖条, 每组包括n个竖条; bar(Y):横坐标使用缺省值X=1:M >bar(X,Y, WIDTH)或bar(Y,wDTm:用 WIDTH指定竖条的宽度, 如果 WIDTH>1,条与条之间将重合。缺省宽度为0.8; bar(., grouped):产生缺省的组合直方图; >bar(,’ stacked):产生累积的直方图; bar(, linespec):指定条的颜色 >H=bar():返回条形图对象的句柄
第4章 Matlab的图形功能 2.直方图命令bar 直方图常用于统计数据的作图, 有bar、bar3、barh 和 bar3h几种函数,其调用格式类似。 以函数bar 为例: ➢bar(X,Y):X 是横坐标向量,Y 可以是向量或矩阵。Y 是向量时,每 一个元素对应一个竖条;Y 是 m 行 n 列矩阵时,将画出 m 组竖条, 每组包括n 个竖条; ➢bar(Y):横坐标使用缺省值X=1:M; ➢bar(X,Y,WIDTH) 或 bar(Y,WIDTH):用 WIDTH 指定竖条的宽度, 如果 WIDTH>1,条与条之间将重合。缺省宽度为0.8; ➢bar(...,’grouped’):产生缺省的组合直方图; ➢bar(...,’stacked’):产生累积的直方图; ➢bar(...,linespec):指定条的颜色; ➢H = bar(...):返回条形图对象的句柄
第4章 Matlabl的图形功能 用绘制直方图的几种命令绘制直方图。 2:2; subplot(2, 2, 4) barh(x,r, stacked") Y=[352,4,1;54,2,3,5;34,52,1 xlabel(y): ylabel(\Sigma X') subplot(2, 2, 1) colormap(summer) bar(ⅹY,r') xlabel('x) ylabel(y) colormap( cool oI) subplot(2, 2, 2) barh(x,Y, grouped) xlabel('y) 2-10 6 ylabel(x' colormap(cool) subplot(2, 2, 3) bar(ⅹY, stacked) xlabel(,) ylabel('\Sigma y) colormap( summer 2-1012 0 10
第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') xlabel('x') ylabel('\Sigma y') colormap(summer) subplot(2,2,4) barh(X,Y','stacked') xlabel('y');ylabel('\Sigma x') colormap(summer)