MATLAB Answers

Interp2/Scatterinterp unstructured Data don't work!

13 views (last 30 days)
Hi MathworKS community,
i hava a set of data that i can plot like the picture below , as you see it dosen't cover all the area
so when i use interp2 to find the value of Z inside the contour i get this error 'Input grid is not a valid MESHGRID.'
i have an idea : fill the empty area with Nan, but it's a little bit confusig for me.
any solution?
contourf(X,Y,Z)
colormap jet;
interp2(X,Y,Z,3000,50) %for example i want to interpolate at X=3000 and Y=50

  0 Comments

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 20 Jan 2021
Use the griddata function instead.
Try this:
Xm = load('X.mat');
X = Xm.Mecanical_Speed;
Ym = load('Y.mat');
Y = Ym.Torque_max_Matrice;
Zm = load('Z.mat');
Z = Zm.Efficiency;
Xi = 3000;
Yi = 50;
Zi = griddata(X,Y,Z,Xi,Yi) %for example i want to interpolate at X=3000 and Y=50
figure
contourf(X,Y,Z)
hold on
plot3(Xi, Yi, Zi, '+k', 'MarkerSize',20)
hold off
colormap jet;
text(Xi,Yi,Zi, sprintf(' \\leftarrow (%3d, %2d, %.3f)', Xi,Yi,Zi), 'VerticalAlignment','middle','HorizontalAlignment','left', 'FontWeight','bold')
producing:
.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!