MATLAB Answers

0

create mesh from X,Y

Sumant Jha さんによって質問されました 2016 年 2 月 12 日
最新アクティビティ Sumant Jha さんによって コメントされました 2016 年 2 月 12 日
I think it is something simple to do, but I can not figure it out. I would like to create a mesh grid from X, Z data. The data is sort of like this:
X= 0:1:500;
Z = 5:10:5000;
I can not use the triangular mesh and so no delaunay or TriScatteredInterp functions. I tried using something simple like:
x=X;
y = X;
[p,q,r]= meshgrid(x,y,Z);
surf(p,q,r);
But this does not works. I get an error that the CData must be an M-by-N matrix or M-by-N-by-3 array. How do I get this working?

  0 件のコメント

サインイン to comment.

1 件の回答

Mike Garrity
Answer by Mike Garrity
on 12 Feb 2016

No, meshgrid with 3 inputs is going to give you a 3D grid. You still want a 2D grid for surf. I think that you're just trying to change the order of the arguments to surf:
[a,b] = meshgrid(0:500,5:10:5000);
z = randn(size(a));
surf(a,z,b,z,'EdgeColor','none')
axis equal

  1 件のコメント

Thanks for the answer. Now I am curious, how do we get the 3-D grid. Because, the grid I want has to has X and Y and Z with X = Y and Z being the value of the cell formed by grid?

サインイン to comment.



Translated by