"Input grid is not a valid MESHGRID." matlab interp2

I am trying to run the following code oz = interp2(ix,iy,iz,ox,oy); ix, iy, iz are 2048 x 2048 matrix ix and iy are grid data ox, oy are 4098 x 4098 matrix, generated by meshgrid funcion, and are within the data range of ix and iy.
however, the software can't work it out and showed error message"Input grid is not a valid MESHGRID" I am not sure where went wrong. I would like to upload the data here, but the file is quite big.
the matlab version is R2016a

回答 (1 件)

Guillaume
Guillaume 2016 年 11 月 11 日

2 投票

The problem is not your ox and oy (which don't even have to be gridded), but your ix and iy which need to be the vertices of a grid (with no holes).
If the known points don't lie on a regular grid, then you can use scatteredInterpolant instead
interpolant = scatteredInterpolant(ix, ix, yz);
oz = interpolant(ox, oy);

1 件のコメント

Guillaume
Guillaume 2016 年 11 月 11 日
wenjuan's comment moved here
Thanks. It seems the case. Though the data ix iy should be grid, but may not accurate.

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeInterpolation についてさらに検索

質問済み:

2016 年 11 月 11 日

コメント済み:

2016 年 11 月 11 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by