Matlab--绘制高逼格地形图

首先来看一个小例子:
[x,y] = mesgrid(1:10);

h=[0,0.02,-0.12,0,-2.09,0,-0.58,-0.08,0,0;…
0.02,0,0,-2.38,0,-4.96,0,0,0,-0.1;…
0,0.1,1,0,-3.04,0,-0.53,0,0.1,0;…
0,0,0,3.52,0,0,0,0,0,0;…
-0.43,-1.98,0,0,0,0.77,0,2.17,0,0;…
0,0,-2.29,0,0.69,0,2.59,0,0.3,0;…
-0.09,-0.31,0,0,0,4.27,0,0,0,-0.01;…
0,0,0,5.13,7.4,0,1.89,0,0.04,0;…
0.1,0,0.58,0,0,1.75,0,-0.11,0,0;…
0,-0.01,0,0,0.3,0,0,0,0,0.01];

[xi,yi]=meshgrid(1:0.1:10);
hi = interp2(x,y,h,xi,yi,‘spline’);
surf(hi);
xlabel(‘x’),ylabel(‘y’),zlabel(‘h’);

运行结果

在这里插入图片描述
现在来学习一下代码中的函数,meshgrid函数
对于一个函数 f(x,y),有2个自变量,假设x取1,2,3,y取4,5,6,想象一下,这是一个二维坐标,那我要生成一些(x,y)。我希望x的每一个点都和y的结合起来形成对应的(x,y)。也就是说在这个例子中,我要生成1,4;1,5;1,6. 2,4;2,5;2,6 3,4;3,5;3,6。那有没有一个快捷的命令来产生这样的数据呢,就是meshgrid

再看interp2函数的用法
作用:meshgrid 格式的二维网格数据的插值
在这里插入图片描述
最后用surf函数显示图像

  • 4
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值