亲爱的小伙伴们,相信很多人对用MATLAB绘制三维地形高程图和请教Matlab的griddata的都不是特别了解,因此今天我来为大家分享一些关于用MATLAB绘制三维地形高程图和请教Matlab的griddata的的知识,希望能够帮助大家解决这些问题。

本文目录一览

用MATLAB绘制三维地形高程图

具体方法如下:

1、将已知的海拔数据放入一个矩阵A中。

2、从矩阵A中获取x,y,z坐标数据

3、根据x,y,z坐标数据,利用griddata函数,进行插值,并绘制伪彩色图。

4、绘制等高线图,代码如下:figure(3),contourf(X,Y,Z)

绘制山地曲面图,代码如下:figure(4),surf(X,Y,Z)

完整的MATLAB代码如图所示。

5、运行结果如下:

散点图

6、伪彩色图

7、等高线图

8、山地三维曲面图

返回目录

请教Matlab的griddata的用法

MATLAB散乱点插值函数
griddata函数
语法:
ZI = griddata(x,y,z,XI,YI)
[XI,YI,ZI] = griddata(x,y,z,XI,YI)
[...] = griddata(...,method)
[...] = griddata(...,method,options)
说明:
ZI = griddata(x,y,z,XI,YI) 调整形如z = f(x,y)的曲面,使之与非等间距矢量(x,y,z)中的数据吻合。griddata 函数在指定的(XI,YI)点处插补此曲面,生成ZI. 此曲面一定通过这些数据点。 XI 和 YI 通常构成均匀网格(与meshgrid函数生成的相同). XI 可以是行矢量,这种情况下该矢量确定一个具有固定列数的矩阵。与之类似,YI 可以是列矢量,确定一个具有固定行数的矩阵。
[XI,YI,ZI] = griddata(x,y,z,XI,YI) 函数返回与上述矩阵相同的插补后的矩阵ZI。并返回由行矢量XI和列矢量yi形成的矩阵XI 和YI. 后者与meshgrid 函数返回的矩阵相同。
[...] = griddata(...,method)使用规定的插补方法:
'linear' 基于三角形的线性插补法(缺省)
'cubic' 基于三角形的三次插补法
'nearest' 最近邻居插补法
'v4' MATLAB 4 griddata方法。
这些方法定义了匹配数据点的曲面类型。'cubic' 和 'v4' 方法生成平滑曲面,而 'linear' 和 'nearest' 分别具有一阶导数和零阶导数不连续。除'v4' 外所有方法基于数据的三角化。如果方法为[], 则使用缺省的'linear' 方法。
[...] = griddata(...,method,options)指定一串将通过delaunayn函数在Qhull中使用的单元阵列选项. 如果选项为 [], 则使用缺省的三角化选项。如果选项为{''}, 不使用任何选项,包括缺省选项。有时,griddata 函数可能将位于数据凸壳上或靠近凸壳的点返回为NaNs。这是因为有时计算中的圆整处理使得很难确定一个靠近边界的点是否处于凸壳内。
算法:
griddata(...,'v4') 命令使用 [3] 中文档化的方法。其他griddata方法基于使用Qhull [2] 的数据三角化。
实例:
对一个函数在±2.0范围内随机采样100点:
rand('seed',0)
x = rand(100,1)*4-2; y = rand(100,1)*4-2;
z = x.*exp(-x.^2-y.^2);
x, y, 和 z 均为包含非均匀采样数据的矢量。定义一个规范的网格,将数据与网格匹配:
ti = -2:.25:2;
[XI,YI] = meshgrid(ti,ti);
ZI = griddata(x,y,z,XI,YI);
Plot the gridded data along with the nonuniform data points used to generate it: mesh(XI,YI,ZI), hold
plot3(x,y,z,'o'), hold

返回目录

如果您对本文的内容感到满意,请在文章结尾处点击“顶一下”以表示您的认可。如果您对本文不满意,也请点击“踩一下”,以便我们改进该篇文章。