2D Interpolation of a scatterplot using xyz values.

I have a 2d scatter plot that I need to interpolate. The values are from an excel sheet and it is a matrix of 3 columns. The first column is the x coordiante, the second is the y coordiante and the third column is the z coordinate. How would I interpolate these data sets on to a 2d scatter plot.
Thanks for the help.

回答 (1 件)

Star Strider
Star Strider 2021 年 3 月 9 日

0 投票

There are several options, likely the easiest being:
xv = linspace(min(x), max(x), numel(x));
yv = linspace(min(y), max(y), numel(y));
[X,Y] = ndgrid(xv,yv);
Z = griddata(x, y, z, X, Y);
That will create a uniform grid in ‘Z’ that interpolates the original ‘z’ values and can then be plotted as desired.

2 件のコメント

Quinn Coughlin
Quinn Coughlin 2021 年 3 月 9 日
Hi thanks for the help, I keep on getting this error, Warning: The underlying triangulation is empty - the points may be collinear. How can i fix this?
Star Strider
Star Strider 2021 年 3 月 9 日
My pleasure!
How can i fix this?
I cannot determine that without your data. Using the unique function with the 'rows' argument may be a solution, however I cannot determine that with any certainty.

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

カテゴリ

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

質問済み:

2021 年 3 月 9 日

コメント済み:

2021 年 3 月 9 日

Community Treasure Hunt

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

Start Hunting!

Translated by