meshgrid() confusion (dimesions, index,...)

Hello everybody, i have a fundamental question on the meshgrid() function. I have a 10x20x30 cubus of scalar data. i wanted to save the x,y- and z coordinates of these points in real space to 3 matrices coordX coordY and coordZ. i tried
[ccordX coordY coordZ]=meshgrid(xmin:xmax, ymin:ymax, zmin:zmax)
and got a horrible mess, since size(coordX) turns out as [20,10,30]. Does anybody know what my mistake is? thanks! carmen

 Accepted Answer

can so?
[ccordX coordZ coordY]=meshgrid(xmin:xmax, zmin:zmax, ymin:ymax)
ADD
[ccordZ coordX coordY]=ndgrid(zmin:zmax, xmin:xmax, ymin:ymax)
eg
yourcubus = randi(150,4,5,3)
x = linspace(0,300,s(2))
y = linspace(0,250,s(3))
z = linspace(0,250,s(1))
[ccordZ coordX coordY]=ndgrid(z,x,y)

3 Comments

yout output has dimesions 30x10x20, i think what you mean is
meshgrid(y,x,z) intead of meshgrid(x,z,y)
what is the point in swiching those 2 first dimensions in meshgrid?
why does ccordX from my first post not have a value stored in
coordX(10,20,30) that represents the x-coordinate of my cubus point (10,20,30)?
Hi Carmen! Added else variant.
as far as i can see the ndgrid is what i was looking for, so that is a valid answer! thanks.
i just found the Grid Representation page and i think i can learn from there whats the idea of haveing these 2 functions.

Sign in to comment.

More Answers (0)

Tags

Asked:

on 15 Feb 2012

Edited:

on 15 Oct 2013

Community Treasure Hunt

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

Start Hunting!