【发布时间】:2015-05-27 09:13:58
【问题描述】:
我有一个 360*3 矩阵,第 1 列具有纬度值,第 2 列具有经度值,第 3 列具有重力值。
问题是,当我使用 meshgrid 创建纬度和经度网格时,网格间距不是常数,这会产生问题。
我尝试创建一个新的 360 * 360 等距网格,最小最大与最初提供的纬度和经度相同。现在我需要在新形成的网格中插入重力值。
请帮忙。我正在使用 interp2 但它显示错误。
dt1
x = D(:,1);
y = D(:,2);
g = D(:,3);
xg = linspace(min(x),max(x),360);
yg = linspace(min(x),max(x),360);
[X,Y] = meshgrid(xg,yg);
[xx,yy] = meshgrid(x,y,);
G = interp2(xx,yy,g,X,Y);`
请帮忙
【问题讨论】:
-
您可能应该提供一些示例数据并显示错误。
-
不幸的是,
interp2无法满足您的需求,因为它还要求输入数据等间距。scatteredinterpolant类是您需要的。
标签: matlab 2d interpolation