MATLAB之家

专注于收录分享MATLAB代码、技巧、经验!
当前位置:网站首页 / MATLAB基础 / 正文

利用MATLAB进行二次插值

2017-02-14 / MATLAB基础 / 7175 次围观 / 1 次吐槽

问题描述:

在一丘陵地带测量高程,xy方向每隔100米测一个点,得高程数据如下。试用MATLAB的二维插值函数“interp2”进行插值,并由此找出最高点和该点的高程。

y                  x

100

200

300

400

100

636

697

624

478

200

698

712

630

478

300

680

674

598

412

400

662

626

552

334

结果:

经过插值画出的地形如下图:(程序:sikao_1.m),得出的最高点位(110110712)。

blob.png

程序源码:

[x,y]=meshgrid(100:100:400); 
z=[636 697 624 478 ; 
   698 712 630 478 ; 
   680 674 598 412 ; 
   662 626 552 334];
[xi,yi]=meshgrid(100:10:400); 
zi=interp2(x,y,z,xi,yi,'linear');
mesh(xi,yi,zi);
grid on
Z=max(zi(:));
[a,b]=find(zi==Z);
xi=a+99
yi=b+99
Z

推荐您阅读更多有关于“MATLABMATLAB之家多次插值二次插值二维插值,”的文章

请在这里放置你的在线分享代码
本站所有文章如无特别注明均为原创。作者:Matlaber ,复制或转载请以超链接形式注明转自 MATLAB之家
原文地址《利用MATLAB进行二次插值

已有1位网友发表了看法:

1#访客  2019-12-18 20:02:16 回复该评论
为什么xi=a+99 yi=b+99啊

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP,Theme By zblog模板

Copyright©2021. MatlabHome All Rights Reserved. 蜀ICP备15004325号-1

分享:

支付宝

微信

扫一扫,想赞多少就多少~