在地图上空间绘制双线性插值网格化数据

时间:2015-08-24 17:37:59

标签: matlab plot grid interpolation surface

我使用以下代码在区域上的地图上绘制网格化数据,但我想知道如何绘制插值数据,以便在区域上绘制连续数据并且数据看起来不是网格化的。 'lat'和'lon'分别是包含纬度和经度坐标的矢量(1x21和1x33)。

ax = worldmap(latlim, lonlim);
S = shaperead('landareas','UseGeoCoords',true);
surfacem(lat, lon, ans');
geoshow([S.Lat], [S.Lon],'Color','black');

我看到很多关于使用interp2的文档,但即使我尝试使用lat和lon创建一个meshgrid(无法附加数据),我也无法工作。我用interp2执行以下操作:

LON,LAT] = meshgrid(unique(lon),unique(lat));
interp2(lon, lat, testdata', LON, LAT);

这给了我一个结果,但我想把它绘制在一个没有看起来像网格的区域上。 testdata是一个33x21矩阵。有任何想法吗?我在这里看到了一些关于插值的例子,但我不知道如何使用我拥有的数据方便地应用它。我很惊讶没有更多的信息或为什么我只是在寻找答案!

谢谢,

0 个答案:

没有答案
相关问题