Surf z axis not visible

When i use surf (e.g. with peaks) the Z axis is not shown. (Linux 64, nvidia-drivers-295.49, Matlab 2012a)

4 Comments

Jan
Jan on 16 May 2012
Could you post a small example, which reproduces the problem?
What is the output from
which surf -all
Florian
Florian on 16 May 2012
example:
>> peaks
output:
>> which surf -all
/home/shared/local/MATLAB/R2012a/toolbox/matlab/graph3d/surf.m
Florian
Florian on 16 May 2012
http://oi47.tinypic.com/j6jxoo.jpg

Sign in to comment.

 Accepted Answer

Florian
Florian on 19 May 2012

0 votes

Meanwhile I've noticed that it is visible in the exported eps. So that's good enough for me right now, though it is not a real solution to the problem...

More Answers (1)

After issuing
peaks
issue the command
zlabel('z')

8 Comments

Florian
Florian on 16 May 2012
not working... :(
Sounds like a more subtle problem... Perhaps try closing all figure windows first because zlabel will put a label on the current active figure window. If that doesn't work, does zlabel('z') add a zlabel on your machine with the following commands?
surf(membrane)
zlabel('z')
Florian
Florian on 17 May 2012
Same same and btw. it also appears right from the start, i.e. after I've restarted MATLAB.
I found that
>> axis vis3d
fixes it. BUT:
>> set(gca, 'DataAspectRatioMode', 'auto','PlotBoxAspectRatioMode', 'auto','CameraViewAngleMode', 'auto')
makes it disappear again. So how do I get both? Stretch to fill and a z axis?
You should be able to have both... The fact that surf(membrane) and zlabel('z') don't work right away is troubling, and I'm not sure what the solution is. I suggest posting a copy of your code that creates a figure that's 1.) missing the zlabel, 2) using axis vis3d to add a label, and 3.) using the set command to screw it up. Seeing all the commands sequentially may allow others more insight.
Florian
Florian on 19 May 2012
>> peaks
No z axis.
>> axis vis3d
Z axis visible
>> set(gca, 'DataAspectRatioMode', 'auto','PlotBoxAspectRatioMode', 'auto','CameraViewAngleMode', 'auto')
Z axis disappeared.
OpenGL renderer, right?
Florian
Florian on 21 May 2012
Yes!
>> set(gcf, 'Renderer', 'painters')
% zaxis visible
>> set(gcf, 'Renderer', 'zbuffer')
% zaxis visible
>> set(gcf, 'Renderer', 'opengl')
% zaxis NOT visible
Or more simply, rend, rend, rend

Sign in to comment.

Categories

Find more on Graphics Performance in Help Center and File Exchange

Asked:

on 16 May 2012

Commented:

on 16 Aug 2014

Community Treasure Hunt

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

Start Hunting!