第三章_Matlab图形绘制试卷.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2、griddata函数,用来产生经插值后均匀间隔数据作图。常用的调用方法是:[XI,YI,ZI] = griddata(x,y,z,XI,YI,’method’),其中x,y,z来自关系式z=f(x,y),也可以是离散的数据点,ZI是有XI和YI插值后得到的对应点。其中method可以是linear,cubic和nearest。 V1 = [1 1 0; -1 1 0; -1 -1 0; 1 -1 0]; x = V1(:, 1);y = V1(:, 2);z = V1(:, 3); xmin = min(x); xmax = max(x); ymin = min(y); ymax = max(y); x0 = linspace(xmin, xmax, 20); y0 = linspace(ymin, ymax, 20); [x0, y0] = meshgrid(x0, y0); z0 = griddata(x, y, z, x0, y0, v4); figure; hold on; view(3); plot3(x, y, z, r., MarkerSize, 20); plot3(x0, y0, z0, k.); col = zeros(size(z0)); col(:, end) = 1;mesh(x0, y0, z0, col) 示例1: x=10*(0.5-rand(1000,1)); y=10*(0.5-rand(1000,1)); z=sqrt(x.*x+y.*y).*(9.995+rand(1000,1)/100); clf; plot3(x,y,z,rp,markerSize,4); hold on; [xx,yy]=meshgrid(linspace(min(x),max(x)),linspace(min(y),max(y))); zz=griddata(x,y,z,xx,yy,cubic); mesh(xx,yy,zz); shading interp; colormap gray; hold on; 示例2: 示例3: x = rand(100,1)*4-2; y = rand(100,1)*4-2; z = x.*exp(-x.^2-y.^2); ti = -2:.25:2; [xi,yi] = meshgrid(ti,ti);zi = griddata(x,y,z,xi,yi); mesh(xi,yi,zi), hold on, plot3(x,y,z,o), hold off 3、TriScatteredInterp函数,该函数可以看作是griddata的升级版,可以取代griddata对离散数据点进行插值。主要用于不规则数据点的插值。主要调用方法:F= TriScatteredInterp(x,y,z),相当于定义了一个关于x,y,z的插值函数。示例1: x=10*(0.5-rand(1000,1)); y=10*(0.5-rand(1000,1)); %生成随机数据 z=sqrt(x.*x+y.*y).*(9.995+rand(1000,1)/100);clf; plot3(x,y,z,‘rp’,‘markerSize’,4); %绘制三维散点图 hold on;F=TriScatteredInterp(x,y,z); %可以理解为定义了一个函数F(.) [xx,yy]=meshgrid(linspace(min(x),max(x)),linspace(min(y),max(y))); zz=F(xx,yy); %把x,y的坐标输入其中,可以计算出插值的z维度数值 mesh(xx,yy,zz); %然后可以采用常规的方法绘制曲面 shading interp;colormap gray;hold on; 注:1、对F还可以设置方法F.method=‘nature’/’linear ’/’nearest’,前两个针对连续曲线。2、类似的一些地形图的绘制也是通过这种插值的方法进行绘制。 示例2: z = x.^2 + y.^2; F = TriScatteredInterp(x,y,z); [xi,yi] = meshgrid(-0.3:.02:0.3, -0.0688:0.01:0.0688); zi = F(xi,yi); mesh(xi,yi,zi) xlabel(Interpolated surface, fontweight,b); figure; zi = xi.^2 + yi.^2; mesh(xi,yi,zi) (8)四维表现图 针对v=v(x,y,z)类型的函数,引入了三维实体的四

文档评论(0)

***** + 关注
实名认证
内容提供者

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档