我有一个2D矩阵F,我希望用interp2
进行插值。要了解此函数的工作原理,我一直在尝试执行以下行:
Fq = interp2(X,Z,F,X,Z);
其中X和Z是用meshgrid
处理后的F轴。我认为Fq将等于F,因为我试图使用相同的轴X和Z进行插值。
但是,我得到了这个输出:
Error using griddedInterpolant
The grid vectors do not define a grid of points that match the given values.
为什么我会收到错误?
有关您的信息,这些是在X,Z和F上运行函数size
的结果:
>> size(X)
ans =
109 24
>> size(Z)
ans =
109 24
>> size(F)
ans =
24 109
谢谢。
答案 0 :(得分:2)
正如函数所说,您的数据大小不同(请记住,[109 24]
不是[24 109]
)。
查看您的数据,看起来您可能有F' F'换位。如果是这样,那么
Fq = interp2(X,Z,F.',X,Z);
将完成这项工作