2D contourplots of a 3D function

I have a 3D matrix; corresponding to values of function f in space. I would like to display 2D contourplots of f at certain planes(x=x0 or y=y0 or z=z0); and I need the contour plane(cross section) to appear at the right location in 3D space; for example: for a plot at z=1:
what's the best way to do this in matlab? I would like something that works similar to quiver3:
[X Y Z]=meshgrid(-6:1:6,-6:1:6,1);
quiver3(X,Y,Z,fx,fy,fz))
except for scalar f.
I tried surf; it only worked for Z=Z0 planes

 Risposta accettata

Patrick Kalita
Patrick Kalita il 11 Apr 2012

0 voti

I think you want to use slice.

3 Commenti

A
A il 11 Apr 2012
yes looks like that's what I need. Is there a way to make data cursor on the figure display value of the volumetric data, instead of x y z coordinates?
Yes, have a look at datacursormode() . You customize the callback function to present whatever information you want.
A
A il 12 Apr 2012
code would be appreciated! assume slice(X,Y,Z,f,0,[],[]). Want to make cursor display value of f.

Accedi per commentare.

Più risposte (0)

Categorie

Community Treasure Hunt

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

Start Hunting!

Translated by