How to place Contourf at a new height?

2 views (last 30 days)
Bolin
Bolin on 16 Apr 2017
Answered: Star Strider on 16 Apr 2017
I have the following plot and the Contourf.
By default, Contourf will always be generated at height Z = 0 i.e. the horizontal plane. I would like to shift Contourf to height Z = -2, this is so the contour will be placed under the graph of my function. How do I achieve this?
Code:
x = linspace(0,1,1000);
y = linspace(0,1,1000);
[X,Y] = meshgrid(x,y);
Z = -X.^2 - Y.^2;
mesh(X,Y,Z)
box on
hold on
contourf(X,Y,Z)

Answers (1)

Star Strider
Star Strider on 16 Apr 2017
This seems to work:
x = linspace(0,1,1000);
y = linspace(0,1,1000);
[X,Y] = meshgrid(x,y);
Z = -X.^2 - Y.^2;
mesh(X,Y,Z+2)
box on
hold on
contourf(X,Y,Z+2)
zt = get(gca, 'ZTick');
set(gca, 'ZTick',zt, 'ZTickLabel',zt-2)
view([15 35])
Change the view arguments to the orientation you want.
A likely better option is Customizing contour plots part 2 (link).

Categories

Find more on Contour Plots 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!