MATLAB三维图形绘制.ppt
《MATLAB三维图形绘制.ppt》由会员分享,可在线阅读,更多相关《MATLAB三维图形绘制.ppt(51页珍藏版)》请在三一办公上搜索。
1、4.2 MATLAB的 三维图形绘制,一、绘制三维线图命令plot3,plot3是用来绘制三维曲线的,它的使用格式与二维绘图的plot命令很相似。,语法:plot3(x,y,z,s)%绘制三维曲线 plot3(x1,y1,z1,s1,x2,y2,z2,s2,)%绘制多条三维曲线说明:当x、y、z是同维向量时,则绘制以x、y、z元素为坐标的三维曲线;当x、y、z是同维矩阵时,则绘制三维曲线的条数等于矩阵的列数。s是指定线型、色彩、数据点形的字符串。,二、绘制三维网格图和曲面图,1.meshgrid命令,为了绘制三维立体图形,MATLAB的方法是将x方向划分为m份,将y方向划分为n份,meshgr
2、id命令是以x、y向量为基准,产生在x-y平面的各栅格点坐标值的矩阵。,语法:X,Ymeshgrid(x,y)说明:X、Y是栅格点的坐标,为矩阵;x、y为向量。,例如,将x(1m)向量和y(1n)向量转换为(nm)的矩阵:,2.三维网格图,三维网格图是由一些四边形相互连接在一起所构成的一种曲面。,语法:mesh(z)%画三维网线图mesh(x,y,z,c)说明:当只有参数z时,以z矩阵的行下标作为x坐标轴,把z的列下标当作y坐标轴;x、y分别为x、y坐标轴的自变量;当有x、y、z参数时,c是指定各点的用色矩阵,当c省略时默认用色矩阵是z的数据。如果x、y、z、c四个参数都有,则应该都是维数相同
3、的矩阵。,3.三维曲面图,语法:surf(z)%画三维曲面图surf(x,y,z,c)说明:参数设置与mesh命令相同,c也可以省略。,4.其它立体网线图和曲面图,meshc命令为立体网状图加等高线;meshz为立体网状图加“围裙”。,三、绘制三维旋转体,1、球面图,语法:sphere(n)%产生单位球面,n为旋转圆周上的分 格线条数,默认n=20。x,y,z=sphere(n)%生成三个(n+1)*(n+1)阶的矩阵 利用surf或mesh命令产生单位球面。,2、柱面图,语法:cylinder(r,n)%以母线向量r生成单位柱面,默认n=20,r=1,1。x,y,z=cylinder(r,n
4、)%生成柱面的x,y,z数据矩阵,利用surf或mesh命令产生单位高度柱面。,四、立体图形与图轴的控制,1网格的隐藏,语法:hidden off%显示被遮盖的网格hidden on%隐藏被遮盖的网格,2改变视角,语法:view(az,el)%通过方位角和俯仰角改变视角说明:az表示方位角(azimuth),el表示俯仰角(elevation),默认值:az=-37.5,el=30,五、色彩的控制,1色图(colormap),(1)RGB三元组RGB三元数组每行表示一种色彩,数组元素R、G、B在01之间取值,分别表示红、绿、蓝基色的相对亮度,如下表所示。,colormap(R,G,B)色图设定
5、函数colormap 色图函数 色图设定函数colormap 色图函数(m)产生m3的色图矩阵 缺省643。,2色图的显示和处理,(1)色图的显示 rgbplot命令语法:rgbplot(map)说明:map是表4.8中的各预定义色图函数,rgbplot命令可画出以行数为自变量红、绿、蓝相对亮度分量的直线图,反映R、G、B三色比重的变化。colorbar命令以不同颜色来代表曲面的高度,垂直显示颜色标尺。,(2)浓淡处理shading,【例】使用浓淡处理peaks函数曲面图。,(3)亮度处理brighten,语法:brighten(a),说明:当0=a=1时,色图加亮,当-1=a0时,色图变暗。
6、,4.3 MATLAB的特殊图形绘制,一、条形图,条形图常用于对统计的数据进行作图,特别适用于少量且离散的数据。,语法:bar(x,y)%画条形图bar3(y,z,width,参数)%画三维条形图,【例】用条形图表示某年一月份中3日6日连续四天的温度数据,y矩阵的各列分别表示平均温度、最高温度和最低温度,用条形图和三维条形图分别表示。,x=3:6;y=5.3000 13.0000 0.40005.1000 11.8000-1.70003.7000 8.1000 0.60001.5000 7.7000-4.5000 bar(x,y)%画条形图 bar3(x,y)%画三维条形图,图4.23(a)条
7、形图(b)三维条形图,二、直方图,语法:hist(y,m)%统计每段的元素个数并画出直方图hist(y,x)%x是向量,用于指定所分每个数据段 的中间值,三、饼图,饼图是用于显示向量中的各元素占向量元素总和的百分比。,语法:pie(x,explode,label)%画二维饼图pie3(x,explode,label)%画三维饼图,说明:x是向量;explode是与x同长度的向量,用来决定是否从饼图中分离对应的一部分块,非零元素表示该部分需要分离;label是用来标注饼图的字符串数组。,分段的个数,默认为10,【例4.21】绘制四个季度支出额的饼图。y=200 100 250 400;%四个季度
8、支出额 explode=0 0 1 0;pie(y,explode,第一季度,第二季度,第三季度,第四季度),四、离散数据图,MATLAB提供了多个绘制离散数据的命令,有stem、stem3、stairs和scatter等。,【例】使用几种绘制离散数据的命令来显示 的离散数据。,五、等高线图,语法:contour3(Z,n)%绘制Z矩阵的三维等高线contour(x,y,z,n)%绘制以x和y指定x、y坐标的二维等高线说明:n为等高线的条数,省略时为自动条数。,x=0:0.1:2*pi;y=sin(x).*exp(-2*x);subplot(3,1,1)stem(x,y,filled)%画火柴
9、杆图 subplot(3,1,2)stairs(x,y)%画阶梯图 subplot(3,1,3)scatter(x,y)%画点图,六、对数坐标和极坐标图,1.对数坐标图形,语法:semilogx(x,y,参数)%绘制x为对数坐标的曲线semilogy(x,y,参数)%绘制y为对数坐标的曲线loglog(x,y,参数)%绘制x、y都为对数坐标的曲线,2.极坐标图语法:polar(theta,radius,参数)%绘制极坐标图说明:theta为相角,radius为离原点的距离。,【例4.23】求传递函数为 的对数幅频特性曲线,横坐标为w,按对数坐标。w=logspace(-2,3,20);%频率w
10、为0.01到1000 Aw=1./(w.*sqrt(0.5*w).2+1);%计算幅频 Lw=20*log10(Aw);%计算对数幅频 semilogx(w,Lw)title(对数幅频特性曲线),七、复向量图,pass命令compass绘制的是以原点为起点的一组复向量,因此又称为罗盘图。语法:compass(u,v)%画罗盘图 compass(Z)说明:u、v分别为复向量的实部和虚部;当只有一个参数Z时,则相当于compass(real(Z),imag(Z)。,2.feather命令feather绘制的是起点为(k,0)的复向量图,又称为羽毛图。语法:feather(u,v)%画羽毛图 fea
11、ther(Z),图4.31(a)罗盘图(b)羽毛图,4.4 对话框,用于计算机与用户进行交互的界面,1.输入信息对话框输入对话框为用户的输入信息提供了界面,使用inputdlg命令创建。语法:answer=inputdlg(prompt,title,lineno,defans,addopts)%创建输入对话框,说明:answer 返回用户的输入,为元胞数组;prompt为提示信息字符串,用引号括起来,为元胞数组;title为标题字符串,用引号括起来,可以省略;lineno用于指定输入值的行数,可以省略;defans为输入项的默认值,用引号括起来,是元胞数组可以省略;addopts指定对话框是否
12、可以改变大小,取on或off,省略时为off表示不能改变大小。,【例】利用输入对话框输入二阶系统的系数。,程序分析:prompt、defans和p都是元胞数组。如果单击“Cancel”按钮,则返回空的元胞数组。,prompt=请输入阻尼系数,请输入无阻尼振荡频率;defans=0.707,1;p=inputdlg(prompt,输入参数,1,defans),2.输出信息对话框(1)消息框语法:msgbox(message,title,icon,icondata,iconcmap,CreateMode)%创建消息框,说明:message为显示的信息,可以是字符串或数组;title为标题,是字符串
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 三维 图形 绘制
链接地址:https://www.31ppt.com/p-5438904.html