Plot contour in xz and yz plane
37 views (last 30 days)
Show older comments
I am trying to plot contours in xy, yz and xz plane simultaneously. The contour is for a surface (Z = f(X,Y)). I made the contour on xy plane but not on any other plane. A similar question was answered but it does not plot the contour in xz or yz plane.
3 Comments
Accepted Answer
Walter Roberson
on 13 May 2020
Create a hgtransform object inside the axes, say HG. Now call contourf() passing in the hgtransform object, HG, in the first position -- the position for axes. Pass the first independent variables in the first position, the second independent variable in the second position, and the resultant variable in the third position.
Now set the Matrix property of the hgtransform to a rotation matrix that rotates from XYZ coordinates into the axes you want. You may wish to use makehgtform to construct the Matrix property.
If you wish to have additional contours on other planes, repeat the process described.
3 Comments
Walter Roberson
on 13 May 2020
[Vind1, Vind2, Vresult] = peaks(30);
ax = gca;
HG = hgtransform(ax);
[~, h] = contourf(Vind1, Vind2, Vresult, 'Parent', HG);
HG.Matrix = makehgtform('xrotate', pi/2);
metrize
on 25 Feb 2021
Edited: metrize
on 25 Feb 2021
@Walter Roberson Hi, I'm having trouble with something similar to this, I'm trying to plot multiple contour plots from inside a for loop and the only way I can move it is with h.ContourZLevel = x; where x is the current value in the for loop, this means i get contour plots stacking in the z axis, but then I cannot view it in the way I want, I need it to be in x,y with the depth as Z, an image is shown: https://i.imgur.com/oCJR73l.png
By doing it this way I can't view it with x,y,depth, but I don't know any other way to plot the contour plots in the for loop without the h.ContourZLevel = x
More Answers (0)
See Also
Categories
Find more on Lighting, Transparency, and Shading in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!