收藏 分销(赏)

matlab三维绘图.ppt

上传人:可**** 文档编号:758279 上传时间:2024-03-06 格式:PPT 页数:30 大小:777KB
下载 相关 举报
matlab三维绘图.ppt_第1页
第1页 / 共30页
matlab三维绘图.ppt_第2页
第2页 / 共30页
matlab三维绘图.ppt_第3页
第3页 / 共30页
matlab三维绘图.ppt_第4页
第4页 / 共30页
matlab三维绘图.ppt_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、MATLAB 绘图绘图北京科技大学数学实验北京科技大学数学实验三维曲面绘图三维曲线绘图二、MATLAB三维曲线绘图plot3三维曲线绘制指令北京科技大学数学实验plot3的调用格式:lplot3(X,Y,Z)lplot3(X,Y,Z,String)lplot3(X1,Y1,Z1,String1,X2,Y2,Z2,String2,)plot3与plot的 用法相同例:绘制三维曲线的图像:北京科技大学数学实验,t=0:pi/10:20*pi;x=t.*sin(t);y=t.*cos(t);z=t;plot3(x,y,z)解:matlab命令为:meshgrid生成网格矩阵北京科技大学数学实验三、M

2、ATLAB三维曲面绘图调用格式:lX,Y=meshgrid(x,y)-生成小矩形顶点的坐标值矩阵lX,Y=meshgrid(x)等价于X,Y=meshgrid(x,x)例:x=1,2,3;y=1,2,3,4;X,Y=meshgrid(x,y)X=1 2 3 1 2 3 1 2 3 1 2 3 Y=1 1 1 2 2 2 3 3 3 4 4 4北京科技大学数学实验mesh三维网格线绘图命令北京科技大学数学实验利用函数meshgrid生成格点矩阵后,再求出各格点对应的函数值,就可以利用三维网格命mesh画出空间网格曲面。lmesh(Z)-Z为nm矩阵,X,Y坐标为元素的下标lmesh(X,Y,Z)

3、-X,Y,Z分别为三维空间的坐标例例:x=1,2,3y=1,2,3,4X,Y=meshgrid(x,y)X=1 2 3 Y=1 1 1 1 2 3 2 2 2 1 2 3 3 3 3 1 2 3 4 4 4 Z=ones(size(X);mesh(X,Y,Z)北京科技大学数学实验例:例:x=1:.1:3;y=1:.1:4;X,Y=meshgrid(x,y);Z=ones(size(X);mesh(X,Y,Z)北京科技大学数学实验surf绘制三维表面图北京科技大学数学实验与三维网格图的区别:网格图:线条有颜色,空挡没有颜色曲面图:线条是黑色,空挡有颜色(把线条之间的空挡填充颜色,沿z轴按每一网格

4、变化)解:matlab命令为:t=-2:0.1:2;x,y=meshgrid(t);z=x.*exp(-x.2-y.2);subplot(1,2,1),mesh(x,y,z),title(网格图)subplot(1,2,2),surf(x,y,z),title(曲面图)北京科技大学数学实验例:绘制函数 的图像,比较指令mesh和surf。北京科技大学数学实验例例 用平行截面法讨论由方程构成的马鞍面形用平行截面法讨论由方程构成的马鞍面形状。状。解:解:MatlabMatlab命令为命令为t=-10:0.1:10;x,y=meshgrid(t);z1=(x.2-2*y.2)+eps;subplot

5、(1,3,1),mesh(x,y,z1),title(马鞍面)a=input(a=(-50a50),z2=a*ones(size(x);subplot(1,3,2),mesh(x,y,z2),title(平面)r0=abs(z1-z2)=1;zz=r0.*z2;yy=r0.*y;xx=r0.*x;subplot(1,3,3),plot3(xx(r0=0),yy(r0=0),zz(r0=0),x)title(交线)北京科技大学数学实验北京科技大学数学实验马鞍面、平面及交线三维图形的控制命令视角控制命令viewview(az,el)设置查看三维图的视点。az为水平方位角,从y轴负方向开始,逆时针旋

6、转为正;el为垂直方位角,以向z轴方向旋转为正。三维默认视角为az=-37.5,el=30view(x,y,z)笛卡尔坐标系下的视角,忽略向量的幅值旋转控制命令rotaterotate(h,direction,alpha,orgin)将图形绕方向旋转一个角度h-表示被旋转的对象direction-方向轴:可用球坐标theta,phi或直角坐标x,y,zalpha-按右手法旋转的角度orgin-支点例4-34利用rotate函数,从不同角度查看函数t=-2:.1:2;x,y=meshgrid(t);z=x.*exp(-x.2-y.2);subplot(121),mesh(x,y,z);subpl

7、ot(122),h=mesh(x,y,z)%返回图形对象的句柄rotate(h,-2,-2,0,30,2,2,0)rotate3d 动态旋转命令,可以让用户使用鼠标来旋转视角subplot(121),surf(ones(10,10)%subplot(122),h=surf(ones(10,10);rotate(h,001,45,100)fori=1:45subplot(122),h=surf(ones(10,10);rotate(h,001,i,100)end背景颜色控制命令colordefcolordef white 将图形的背景颜色设置为白色colordef blackcolordef n

8、one 将图形背景和图形窗口的颜色设置为默认的颜色colordef(fig,color_option)将图形句柄fig图形的背景设置为color_option指定的颜色见P70例4-36图形颜色控制命令colormapcolormap(R,G,B)用单色绘图,R,G,B代表一个配色方案,取值在0,1之间。通过对R、G、B大小的设置,可以调制出不同的颜色。p71表4-5colormap(CM)CM为色图矩阵。色图为m*3的矩阵。Matlab预定义了一些色图矩阵的值,表4-6为常用的色图矩阵。z=peaks(20);CM=cool;%CM=hot;pink;%用两个已知的色图构成新的色图surf(

9、z)colormap(CM)colorbar%显示色度条图形着色控制命令shadingshadingflat使用平滑方式着色。网格图的某条线段或曲面图中的某整个贴片都是一种颜色,该颜色取值线段的两端或者该贴片4个顶点中下标最小那点的颜色。shadinginterp使用插值的方式为图形着色。网格图线段,或者曲面图贴片上各点的颜色由该线段两端或该贴片4个顶点的颜色线性插值所得。shadingfaceted以平面为单位进行着色,在flat用色基础上,在贴片的四周勾出黑色网线。subplot(131),surf(peaks(40);subplot(132),surf(peaks(40);shading

10、flatsubplot(133),surf(peaks(40);shadinginterp透视控制命令hiddenhiddenon消隐被遮挡的图形hiddenoff透视被遮挡的图形Matlab在绘制三维网线图和曲面图时,一般进行消隐处理,为得到透视效果,用以下命令:x0,y0,z0=sphere(30);X=2*x0;Y=2*y0;Z=2*z0;surf(x0,y0,z0);%画里面的小球shadinginterp%使用插值的方式进行着色holdon,mesh(X,Y,Z),colormap(hot),holdoffhiddenoff%透视外面大球看到里面小球axisequal,axisoff

11、%坐标轴三个方向上刻度增量相同,并消隐坐标轴光照控制命令lightlight(propertyname,propertyvalue,)创建光源并设置其属性handle=light()返回所创建光源的句柄Matlab提供了许多函数在图形中进行对光源的定位并改变光照对象的特征,见P73表4-7.其中light函数用于设置光源。z=peaks(50);subplot(121),surf(z)subplot(122),surf(z),light(position,20,-20,5)对象和句柄MATLAB把构成图形的各个基本要素称为图形对象,包括图形窗口、坐标轴、线条、曲面、文本和其它对象。每一个对象都有一个数字来标识,叫做句柄。当每次创建一个对象时,MATLAB就为它建立一个唯一的句柄。作业:P795,7,8,9

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      联系我们       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号  |  icp.png浙ICP备2021020529号-1 浙B2-2024(办理中)  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服