书签 分享 收藏 举报 版权申诉 / 45
上传文档赚钱

类型matlab计算的可视化第二次课课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3293392
  • 上传时间:2022-08-17
  • 格式:PPT
  • 页数:45
  • 大小:1.53MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《matlab计算的可视化第二次课课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    matlab 计算 可视化 第二次 课件
    资源描述:

    1、第四章第四章 MATLAB计算的可视化计算的可视化 三维图形具有更强的表现力。三维图形具有更强的表现力。MatlabMatlab提供了丰提供了丰富的函数来绘制三维图形。绘制三维图形与绘制富的函数来绘制三维图形。绘制三维图形与绘制二维图形的方法类似,很多是从二维绘图的基础二维图形的方法类似,很多是从二维绘图的基础上扩展而来的。上扩展而来的。4.2 4.2 三维图形的绘制三维图形的绘制4.2.1 4.2.1 三维曲线三维曲线 plot3plot3函数函数 最基本的三维图形函数为最基本的三维图形函数为plot3plot3,其调用格式为,其调用格式为plot3(x,y,z):plot3(x,y,z):

    2、其中其中x,yx,y和和z z为为3 3个相同维数的向量。函数个相同维数的向量。函数绘出这些向量所表示的点的曲线。绘出这些向量所表示的点的曲线。plot3(X,Y,Z):plot3(X,Y,Z):其中其中X,YX,Y和和Z Z为为3 3个相同阶数的矩阵,函数绘个相同阶数的矩阵,函数绘出出3 3矩阵的列向量的曲线;矩阵的列向量的曲线;4.2 4.2 三维图形的绘制三维图形的绘制 若要定义不同的线型,使用以下形式:若要定义不同的线型,使用以下形式:plot3(X,Y,Z,s):plot3(X,Y,Z,s):其中其中s s为定义线型的字符串,形式同为定义线型的字符串,形式同plotplot函数。函数

    3、。plot3(x1,y1,z1,s1,x2,y2,z2,s2,plot3(x1,y1,z1,s1,x2,y2,z2,s2,xn,yn,zn,sn),xn,yn,zn,sn)其中,每一组其中,每一组x x,y y,z z组成一组曲线的坐标参数,选组成一组曲线的坐标参数,选项的定义和项的定义和plotplot函数相同。当函数相同。当x x、y y、z z是同维向量时,则是同维向量时,则x x、y y、z z对应元素构成一条三维曲线;当对应元素构成一条三维曲线;当x x、y y、z z是同维是同维矩阵时,则以矩阵时,则以x x、y y、z z对应列元素绘制三维曲线,曲线条对应列元素绘制三维曲线,曲线

    4、条数等于矩阵列数数等于矩阵列数4.2 4.2 三维图形的绘制三维图形的绘制【例例4.234.23】绘制三维曲线。绘制三维曲线。程序如下:程序如下:t=0:pi/10:10t=0:pi/10:10*pi;pi;x=sin(t)+t.x=sin(t)+t.*cos(t);cos(t);y=cos(t)-t.y=cos(t)-t.*sin(t);sin(t);z=t;z=t;plot3(x,y,z);plot3(x,y,z);axis(-30 30-30 30 0 35)axis(-30 30-30 30 0 35)title(Line in 3-D Space);title(Line in 3-D

    5、 Space);xlabel(X);ylabel(Y);zlabel(Z);xlabel(X);ylabel(Y);zlabel(Z);grid on;grid on;4.2 4.2 三维图形的绘制三维图形的绘制【例例4.244.24】绘制三维螺旋线。绘制三维螺旋线。x=0:pi/50:10 x=0:pi/50:10*pi;pi;y=sin(x);y=sin(x);z=cos(x);z=cos(x);plot3(x,y,z);plot3(x,y,z);4.2 4.2 三维图形的绘制三维图形的绘制【例例4.254.25】绘制参数为矩阵的三维图。绘制参数为矩阵的三维图。x,y=meshgrid(-

    6、2:0.1:2,-2:0.1:2);x,y=meshgrid(-2:0.1:2,-2:0.1:2);z=x.z=x.*exp(-x.2-y.2);exp(-x.2-y.2);plot3(x,y,z)plot3(x,y,z)4.2 4.2 三维图形的绘制三维图形的绘制4.2.24.2.2三维曲面三维曲面1 1、网图函数、网图函数 上例中用到了上例中用到了meshgridmeshgrid函数,该函数为网图函数的一函数,该函数为网图函数的一种,种,matlabmatlab语言提供了一系列的网图函数,如下表:语言提供了一系列的网图函数,如下表:函数名函数名说明说明mesh三维网格图三维网格图meshc

    7、将网格与等高线结合将网格与等高线结合meshz屏蔽的网格图屏蔽的网格图meshgrid生成网格点生成网格点4.2 4.2 三维图形的绘制三维图形的绘制 matlabmatlab语言对于网格的处理方法是:将语言对于网格的处理方法是:将xyxy平面按指平面按指定方式分隔成平面网格,然后根据程序中给定的方式计定方式分隔成平面网格,然后根据程序中给定的方式计算第三维变量的值,即算第三维变量的值,即z z轴的值,与对应的轴的值,与对应的xyxy平面的坐标平面的坐标构成三维点元素,根据由此得到的构成三维点元素,根据由此得到的(x,z),(y,z)(x,z),(y,z)计算各平计算各平面的曲线,彼此相连就构

    8、成了网格图。面的曲线,彼此相连就构成了网格图。4.2 4.2 三维图形的绘制三维图形的绘制 函数函数meshgridmeshgrid是网图函数中最简单的一个,其作用是是网图函数中最简单的一个,其作用是将给定的区域按一定的方式划分成平面网格,该平面网格将给定的区域按一定的方式划分成平面网格,该平面网格可以用来绘制三维曲面,具体调用格式如下:可以用来绘制三维曲面,具体调用格式如下:X,Y=meshgrid(x,y):X,Y=meshgrid(x,y):其中其中x,yx,y为给定的向量,一方面可为给定的向量,一方面可以用来定义网格划分区域;另一方面也可以用来定义网格以用来定义网格划分区域;另一方面也

    9、可以用来定义网格划分方法。矩阵划分方法。矩阵X X和和Y Y则是网格划分后的数据矩阵则是网格划分后的数据矩阵。4.2 4.2 三维图形的绘制三维图形的绘制【例例4.264.26】x=1:3;y=22:25;X,Y=meshgrid(x,y)%在在1,3 22,25区域生成区域生成为网为网 格坐标格坐标X=1 2 3 1 2 3 1 2 3 1 2 3Y=22 22 22 23 23 23 24 24 24 25 25 254.2 4.2 三维图形的绘制三维图形的绘制函数函数meshmesh用来绘制三维的网图,调用格式如下;用来绘制三维的网图,调用格式如下;Mesh(X,Y,Z,C)%Mesh(

    10、X,Y,Z,C)%绘制四个矩阵变量的彩色网格面图形。绘制四个矩阵变量的彩色网格面图形。观测点可由函数观测点可由函数viewview定义,坐标轴可由定义,坐标轴可由axisaxis函数定义,函数定义,颜色由颜色由C C设置,默认时,设置,默认时,matlabmatlab中中c=zc=z,即颜色设定正,即颜色设定正比于图形的高度,也可由函数比于图形的高度,也可由函数colormapcolormap实现。实现。mesh(X,Y,Z)%mesh(X,Y,Z)%使使C=ZC=Z,即网图高度正比于图高,即网图高度正比于图高 mesh(x,y,Z)mesh(x,y,Z)和和mesh(x,y,Z,C)mesh

    11、(x,y,Z,C)此处使用两个向量此处使用两个向量代替两个矩阵,同时要求代替两个矩阵,同时要求length(x)=n,length(y)=mlength(x)=n,length(y)=m且且m,n=size(Z)m,n=size(Z)。在这种情况下,网格线的顶点为。在这种情况下,网格线的顶点为(x(j),y(i),z(i,j)x(j),y(i),z(i,j)的三倍。的三倍。4.2 4.2 三维图形的绘制三维图形的绘制注意:注意:x x对应于对应于Z Z的列,而的列,而y y对应于对应于Z Z的行。的行。mesh(Z)mesh(Z)和和mesh(Z,C)mesh(Z,C)使用使用x=1:nx=1

    12、:n及及y=1:my=1:m。在此情况下,高度。在此情况下,高度Z Z为单值函数。为单值函数。【例例4.274.27】x=-8:0.5:8;y=x;a=ones(size(y)*x;b=y*ones(size(x);c=sqrt(a.2+b.2)+eps;z=sin(c)./c;mesh(z)4.2 4.2 三维图形的绘制三维图形的绘制 MeshMesh函数的第三个输入参数将设置生成图中的颜色,函数的第三个输入参数将设置生成图中的颜色,matlabmatlab允许用户增加一个输入变量专门设置面图色彩。当允许用户增加一个输入变量专门设置面图色彩。当meshmesh函数仅有一个输入变量时,将以输入

    13、矩阵的下标生成函数仅有一个输入变量时,将以输入矩阵的下标生成平面网格系,并由此生成三维面图。平面网格系,并由此生成三维面图。【例例4.284.28】meshmesh函数绘制的函数绘制的HilbertHilbert矩阵三维面图。矩阵三维面图。z=hilb(10)z=hilb(10);mesh(z)mesh(z)4.2 4.2 三维图形的绘制三维图形的绘制【例例4.294.29】绘制三维曲面图绘制三维曲面图X,Y=meshgrid(0:pi/100:pi,0:pi/100:pi/2);X,Y=meshgrid(0:pi/100:pi,0:pi/100:pi/2);z=sin(X.2)+cos(Y.

    14、2);z=sin(X.2)+cos(Y.2);mesh(X,Y,z)mesh(X,Y,z)axis(0 4 0 1.8-1.5 1.5);axis(0 4 0 1.8-1.5 1.5);2/,0,0),cos()sin(22yxyxz4.2 4.2 三维图形的绘制三维图形的绘制 函数函数meshcmeshc与函数与函数meshmesh调用的方式相同,只是该函数调用的方式相同,只是该函数在在meshmesh的作用之上又增加了的作用之上又增加了contourcontour函数的功能,即绘制函数的功能,即绘制相应的等高线。相应的等高线。【例例4.304.30】meshcmeshc函数绘制的三维面图。

    15、函数绘制的三维面图。X,Y=meshgrid(-4:0.5:4);Z=sqrt(X.2+Y.2);meshc(Z);4.2 4.2 三维图形的绘制三维图形的绘制 函数函数meshzmeshz(带底座的三维网格曲面函数)与(带底座的三维网格曲面函数)与meshmesh调用调用的方式也相同,不同的是该函数在的方式也相同,不同的是该函数在meshmesh函数的作用之上增函数的作用之上增加了屏蔽的作用,即增加了边界面屏蔽。加了屏蔽的作用,即增加了边界面屏蔽。【例例4.31】使用使用meshz函数绘制的三维面图。函数绘制的三维面图。X,Y=meshgrid(-4:0.5:4);Z=sqrt(X.2+Y.

    16、2);meshz(Z);4.2 4.2 三维图形的绘制三维图形的绘制2.2.着色函数着色函数 绘制着色图的函数绘制着色图的函数surfsurf也是也是matlabmatlab语言中较为常用的语言中较为常用的三维图形函数,其调用格式如下三维图形函数,其调用格式如下;surf surf(X X,Y Y,Z Z,C C)输入参数的设置与函数输入参数的设置与函数meshmesh相同,不同的是相同,不同的是meshmesh函数函数绘制的图形是一网格图,而绘制的图形是一网格图,而surfsurf函数绘制的图形是着色的函数绘制的图形是着色的三维表面。三维表面。MatlabMatlab语言对表面进行着色的方法

    17、是,在得到语言对表面进行着色的方法是,在得到相应的网格后,对每一网格依据该网格所代表的节点的色相应的网格后,对每一网格依据该网格所代表的节点的色值(由变量值(由变量C C控制),来定义这一网格的颜色。控制),来定义这一网格的颜色。4.2 4.2 三维图形的绘制三维图形的绘制【例例4.324.32】绘制三维着色图。绘制三维着色图。X,Y=meshgrid(-4:0.5:4);Z=sqrt(X.2+Y.2);surf(Z)4.2 4.2 三维图形的绘制三维图形的绘制【例4.33】在xy平面内选择区域-2,2-2,2,绘制函数 的4种三维曲面图。程序转下页:)(22yxez4.2 4.2 三维图形的

    18、绘制三维图形的绘制 xx=linspace(-2,2,25);yy=xx;xx=linspace(-2,2,25);yy=xx;X,Y=meshgrid(xx,yy);X,Y=meshgrid(xx,yy);Z=-exp(-X.2-Y.2);Z=-exp(-X.2-Y.2);subplot(2,2,1);subplot(2,2,1);mesh(X,Y,Z);mesh(X,Y,Z);title(mesh(X,Y,Z);title(mesh(X,Y,Z);subplot(2,2,2);subplot(2,2,2);surf(X,Y,Z);surf(X,Y,Z);title(surf(X,Y,Z);

    19、title(surf(X,Y,Z);subplot(2,2,3);subplot(2,2,3);meshz(X,Y,Z);meshz(X,Y,Z);title(meshz(X,Y,Z);title(meshz(X,Y,Z);subplot(2,2,4);subplot(2,2,4);meshc(X,Y,Z);meshc(X,Y,Z);title(meshc(X,Y,Z);title(meshc(X,Y,Z);axis(-2 2-2 2-1.2 0);axis(-2 2-2 2-1.2 0);4.2 4.2 三维图形的绘制三维图形的绘制3.3.特殊的三维图形函数特殊的三维图形函数 matlabm

    20、atlab语言中的三维图形函数语言中的三维图形函数函数名函数名说明说明函数名函数名说明说明bar3bar3三维条形图三维条形图surfcsurfc着色图与等高线图结合着色图与等高线图结合comet3comet3三维彗星图三维彗星图trisurftrisurf三角形表面图三角形表面图ezgraph3ezgraph3函数控制绘制三维图函数控制绘制三维图trimeshtrimesh三角形网格图三角形网格图pie3pie3三维饼状图三维饼状图waterfallwaterfall瀑布图瀑布图scatter3scatter3三维散射图三维散射图cylindercylinder柱面图柱面图stem3stem

    21、3三维离散数据图三维离散数据图spheresphere球面图球面图4.2 4.2 三维图形的绘制三维图形的绘制【例4.34】绘制三维饼状图。x=2,4,6,8;x=2,4,6,8;pie3(x,0,0,1,0);pie3(x,0,0,1,0);4.2 4.2 三维图形的绘制三维图形的绘制【例例4.354.35】绘制着色图与三维等高线图。绘制着色图与三维等高线图。X,Y=meshgrid(-4:0.5:4);Z=sqrt(X.2+Y.2);surfc(X,Y,Z);4.2 4.2 三维图形的绘制三维图形的绘制 与二维图形部分的等高线函数与二维图形部分的等高线函数contourcontour相类似

    22、,三维相类似,三维图形绘制函数中也有相应的等高线函数图形绘制函数中也有相应的等高线函数contour3contour3,其调用,其调用格式与函数格式与函数contourcontour相同。相同。【例例4.364.36】绘制三维等高线图。绘制三维等高线图。X,Y=meshgrid(-4:0.5:4);contour3(peaks(X,Y),25);4.2 4.2 三维图形的绘制三维图形的绘制 peakspeaks函数函数:peakspeaks函数(多峰函数)常用于三维曲面的函数(多峰函数)常用于三维曲面的演示。该函数可以用来生成绘图数据矩阵,矩阵元素由演示。该函数可以用来生成绘图数据矩阵,矩阵元

    23、素由函数函数在矩形区域在矩形区域-3,3-3,3-3,3-3,3的等分网格点上的函数值确定。的等分网格点上的函数值确定。例如:例如:z=peaks(30);z=peaks(30);将生成一个将生成一个3030 3030的矩阵的矩阵z z,即分别沿,即分别沿x x和和y y方向将方向将区间区间 3 3,33等分成等分成2929份,并计算这些网格点上的函数值。份,并计算这些网格点上的函数值。默认参数时将生成一个默认参数时将生成一个4949 4949的矩阵。也可以根据网格的矩阵。也可以根据网格坐标矩阵坐标矩阵x x、y y重新计算函数值矩阵。重新计算函数值矩阵。222222)1(53)1(231)5

    24、(10)1(3),(yxyxyxeeyxxexyxf4.2 4.2 三维图形的绘制三维图形的绘制例如:例如:x,y=meshgrid(-5:0.1:5);x,y=meshgrid(-5:0.1:5);z=peaks(x,y);z=peaks(x,y);生成的数值矩阵可以作为生成的数值矩阵可以作为meshmesh、surfsurf等函数的参数而绘制出等函数的参数而绘制出多峰函数曲面图。另外,若在调用多峰函数曲面图。另外,若在调用peakspeaks函数时不带输出函数时不带输出参数,则直接绘制出多峰函数曲面图。参数,则直接绘制出多峰函数曲面图。4.2 4.2 三维图形的绘制三维图形的绘制cylin

    25、dercylinder函数:函数:cylindercylinder函数用于绘制柱面,其调用格式函数用于绘制柱面,其调用格式为为 x,y,z=cylinder(R,n)x,y,z=cylinder(R,n)其中,其中,R R是一个向量,存放柱面各个等间隔高度上的是一个向量,存放柱面各个等间隔高度上的半径;半径;n n表示在圆柱圆周上有表示在圆柱圆周上有n n个间隔点,默认时表示有个间隔点,默认时表示有2020个间隔点。例如,个间隔点。例如,cylinder(3)cylinder(3)生成一个圆柱,生成一个圆柱,cylinder(10,1)cylinder(10,1)生成一个圆锥,而生成一个圆锥,

    26、而t=0:pi/100:4t=0:pi/100:4*pi;pi;R=sin(t);R=sin(t);cylinder(R,30)cylinder(R,30)生成一个正弦型柱面。生成一个正弦型柱面。4.2 4.2 三维图形的绘制三维图形的绘制【例例4.374.37】绘制三维曲面图形。绘制三维曲面图形。t=0:pi/20:2t=0:pi/20:2*pi;pi;subplot(1,2,1);subplot(1,2,1);x,y,z=cylinder(sin(t),30);x,y,z=cylinder(sin(t),30);surf(x,y,z);surf(x,y,z);subplot(1,2,2);

    27、subplot(1,2,2);x,y,z=peaks(100);x,y,z=peaks(100);mesh(x,y,z);mesh(x,y,z);4.2 4.2 三维图形的绘制三维图形的绘制【例例4.384.38】绘制柱面图。绘制柱面图。x=0:pi/20:pi x=0:pi/20:pi*3;3;r=5+cos(x);r=5+cos(x);a,b,c=cylinder(r,30);a,b,c=cylinder(r,30);mesh(a,b,c)mesh(a,b,c)4.2 4.2 三维图形的绘制三维图形的绘制 spheresphere函数函数:spheresphere函数用于绘制三维球面,其调

    28、用格函数用于绘制三维球面,其调用格式为式为 x,y,z=sphere(n)x,y,z=sphere(n)该函数将产生(该函数将产生(n n+1 1)(n n+1 1)矩阵)矩阵x x、y y、z z,采用这采用这3 3个矩阵可以绘制出圆心位于原点、半径为个矩阵可以绘制出圆心位于原点、半径为1 1的的单位球体。若在调用该函数时不带输出参数,则直接单位球体。若在调用该函数时不带输出参数,则直接绘制所需球面。绘制所需球面。n n决定了球面的圆滑程度,其默认值为决定了球面的圆滑程度,其默认值为2020。若。若n n值取得较小,则将绘制出多面体表面图。值取得较小,则将绘制出多面体表面图。4.2 4.2

    29、三维图形的绘制三维图形的绘制【例例4.394.39】绘制地球表面的气温分布示意图。绘制地球表面的气温分布示意图。a,b,c=sphere(40);t=abs(c);surf(a,b,c,t);axis(equal);axis(square);colormap(hot)4.2 4.2 三维图形的绘制三维图形的绘制bar3bar3和和bar3hbar3h函数函数:分别绘制垂直和水平三维条形图分别绘制垂直和水平三维条形图,其调用其调用格式格式:bar3(x,y);bar3(x,y);bar3h(x,y);bar3h(x,y);其中,其中,x x是向量,是向量,y y是向量或矩阵,是向量或矩阵,x x

    30、向量元素的个数向量元素的个数与与y y的行数相同。的行数相同。bar3bar3和和bar3hbar3h函数在函数在x x指定的位置上绘制指定的位置上绘制y y中元素的条形图,中元素的条形图,x x默认时,若默认时,若y y是长度为是长度为n n的向量,则的向量,则x x轴轴坐标从坐标从1 1变化到变化到n;n;若若y y是是m m n n的矩阵,则的矩阵,则x x轴坐标从轴坐标从1 1变化变化到到n n,y y中的元素按行分组。中的元素按行分组。4.2 4.2 三维图形的绘制三维图形的绘制【例例4.404.40】绘制三维条形图绘制三维条形图x=51 82 34 47;67 78 68 90;7

    31、8 85 65 50;x=51 82 34 47;67 78 68 90;78 85 65 50;bar3(x);bar3(x);Bar3h(x);Bar3h(x);4.2 4.2 三维图形的绘制三维图形的绘制 三维多边形函数三维多边形函数fill3:fill3:可在三维空间内绘制出多可在三维空间内绘制出多边形,并填充颜色。其调用格式:边形,并填充颜色。其调用格式:fill3(x,y,z,c)fill3(x,y,z,c)其中,使用其中,使用x,y,zx,y,z作为多边形的顶点,而作为多边形的顶点,而c c指定指定填充的颜色。填充的颜色。【例例4.414.41】X=0 1 1 2;1 1 2 2

    32、;0 0 1 1;X=0 1 1 2;1 1 2 2;0 0 1 1;Y=1 1 1 1;1 0 1 0;0 0 0 0;Y=1 1 1 1;1 0 1 0;0 0 0 0;Z=1 1 1 1;1 0 1 0;0 0 0 0;Z=1 1 1 1;1 0 1 0;0 0 0 0;C=0.5000 1.0000 1.0000 0.5000;C=0.5000 1.0000 1.0000 0.5000;1.0000 0.5000 0.5000 0.1667 1.0000 0.5000 0.5000 0.1667 0.3330 0.3330 0.5000 0.5000;0.3330 0.3330 0.5

    33、000 0.5000;fill3(X,Y,Z,C)fill3(X,Y,Z,C)4.2 4.2 三维图形的绘制三维图形的绘制4.2 4.2 三维图形的绘制三维图形的绘制 瀑布图函数瀑布图函数waterfallwaterfall:它的用法及图形效果与它的用法及图形效果与meshzmeshz函数函数相似,只是它的网格线是在相似,只是它的网格线是在x x轴方向出现,具有瀑布效果。轴方向出现,具有瀑布效果。【例例4.424.42】绘制多峰函数的瀑布图和等高线图。绘制多峰函数的瀑布图和等高线图。程序如下:程序如下:subplot(1,2,1);subplot(1,2,1);X,Y,Z=peaks(30);

    34、X,Y,Z=peaks(30);waterfall(X,Y,Z)waterfall(X,Y,Z)xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis);xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis);subplot(1,2,2);subplot(1,2,2);contour3(X,Y,Z,12,k);%contour3(X,Y,Z,12,k);%其中其中1212代表高度的等级数代表高度的等级数xlabel(X-axis),ylabel(Y-axis),zlabel(Z-axis);xlabel(X-axis),ylab

    35、el(Y-axis),zlabel(Z-axis);4.2 4.2 三维图形的绘制三维图形的绘制4.2 4.2 三维图形的绘制三维图形的绘制trimeshtrimesh函数:函数:生成三角形网格图,调用格式如下:生成三角形网格图,调用格式如下:trimesh(Tri,X,Y,Z):trimesh(Tri,X,Y,Z):显示由显示由m m3 3的矩阵的矩阵TriTri定义的三角定义的三角形网格。形网格。TriTri的每行数据通过索引包含的每行数据通过索引包含X,Y,ZX,Y,Z顶点的矢量或顶点的矢量或矩阵来定义一个三角形。矩阵来定义一个三角形。trimesh(Tri,X,Y,Z,C):trime

    36、sh(Tri,X,Y,Z,C):用与用与surfsurf函数相同的方式指定函数相同的方式指定C C定义的颜色。定义的颜色。trimesh(trimesh(,PropertyNamePropertyName,PropertyValue,PropertyValue):):为函为函数创建的数创建的patchpatch图形对象指定其他属性名和属性值。图形对象指定其他属性名和属性值。4.2 4.2 三维图形的绘制三维图形的绘制【例例4.434.43】创建顶点矢量和网格矩阵,然后创建一个三角形创建顶点矢量和网格矩阵,然后创建一个三角形网格图。网格图。x=rand(1,50);y=rand(1,50);z=

    37、peaks(6*x-3,6*x-3);tri=delaunay(x,y);trimesh(tri,x,y,z);4.2 4.2 三维图形的绘制三维图形的绘制三角形刻面图函数三角形刻面图函数trisurftrisurf:生成三角形表面生成三角形表面图,调用格式如下:图,调用格式如下:trisurf(Tri,X,Y,Z):trisurf(Tri,X,Y,Z):显示由显示由m m3 3的矩阵的矩阵TriTri定定义的三角形网格义的三角形网格,并作为刻面。并作为刻面。TriTri的每行数据通的每行数据通过矢量或矩阵过矢量或矩阵X,YX,Y和和Z Z赋索引值来定义一个三角形。赋索引值来定义一个三角形。t

    38、risurf(Tri,X,Y,Z,C):trisurf(Tri,X,Y,Z,C):用与用与surfsurf函数相同的方函数相同的方式指定式指定C C定义的颜色。定义的颜色。4.2 4.2 三维图形的绘制三维图形的绘制【例例4.434.43】创建顶点矢量和刻面矩阵,然后创建一个三角形创建顶点矢量和刻面矩阵,然后创建一个三角形刻面图。刻面图。x=rand(1,50);y=rand(1,50);z=peaks(6*x-3,6*x-3);tri=delaunay(x,y);trisurf(tri,x,y,z);4.3 4.3 四维表现图四维表现图 对于三维图形,通常可以利用对于三维图形,通常可以利用z

    39、=z(x,y)z=z(x,y)的确的确定或不确定的函数关系来绘制可视化图形,此时定或不确定的函数关系来绘制可视化图形,此时自变量是二维的。而在高等物理、力学等的研究自变量是二维的。而在高等物理、力学等的研究中经常会遇到形如中经常会遇到形如v=v(x,y,z)v=v(x,y,z)的函数。此时自变的函数。此时自变量为三维的,而图形应当是四维的。但是由于我量为三维的,而图形应当是四维的。但是由于我们所处空间和思维的局限性,在计算机的屏幕上们所处空间和思维的局限性,在计算机的屏幕上只能表现出三个空间变量。为了表现四维图像,只能表现出三个空间变量。为了表现四维图像,引入了三维实体的思维切片色图,它由函数

    40、引入了三维实体的思维切片色图,它由函数sliceslice来实现,其调用格式如下:来实现,其调用格式如下:4.3 4.3 四维表现图四维表现图slice(X,Y,Z,V,Sx,Sy,Sz):slice(X,Y,Z,V,Sx,Sy,Sz):绘制向量绘制向量Sx,Sy,SzSx,Sy,Sz中的点沿中的点沿x,y,zx,y,z方向的切片图。数组方向的切片图。数组X,Y,ZX,Y,Z用来定义用来定义V V的坐标。在每的坐标。在每一点的颜色必须由对容量一点的颜色必须由对容量V V的插值来决定。的插值来决定。V V必须为必须为M MN NP P阶的矩阵。阶的矩阵。slice(X,Y,Z,V,XI,YI,Z

    41、I):slice(X,Y,Z,V,XI,YI,ZI):绘制沿绘制沿XI,YI,ZIXI,YI,ZI数组定义的曲数组定义的曲面的通过容量面的通过容量V V的切片图。的切片图。slice(V,Sx,Sy,Sz)slice(V,Sx,Sy,Sz)或或slice(V,XI,YI,ZI):slice(V,XI,YI,ZI):假设假设X=1X=1:N N,Y=1Y=1:M M,Z=1Z=1:P P。slice(slice(,methodmethod):):由由methodmethod指定使用的插值方法。其指定使用的插值方法。其值可以为值可以为linear,cubiclinear,cubic或或neares

    42、t.nearest.默认默认linear.linear.河南理工大学测绘学院4.3 4.3 四维表现图四维表现图【例例4.444.44】可视化函数可视化函数 ,自变量的范围分别为自变量的范围分别为 x,y,z=meshgrid(-2:.2:2,-2:.25:2,-1:.16:2);x,y,z=meshgrid(-2:.2:2,-2:.25:2,-1:.16:2);v=x.v=x.*exp(-x.2-y.2-z.2);exp(-x.2-y.2-z.2);slice(x,y,z,v,-1.2.8 2,2,-2.2)slice(x,y,z,v,-1.2.8 2,2,-2.2)colorbar(horiz);colorbar(horiz);view(-30,45)view(-30,45)222zyxxef22,22,22zyx河南理工大学测绘学院4.3 4.3 四维表现图四维表现图

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:matlab计算的可视化第二次课课件.ppt
    链接地址:https://www.163wenku.com/p-3293392.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库