Show tick marks above plot

I have a 3D plot that I am viewing from the top, so that it looks like a 2D plot. How can I display the tick marks above the plot? I tried using
set(gca, 'Layer', 'top')
but that only brought the major tick marks to the top and left the minor tick marks hidden. Worse, it also brought the dotted gridlines, which I do not want to see, to the top.

1 Comment

I know it's been a long time, but
use this after ploting
set(gca,'Layer','top')

Sign in to comment.

Answers (3)

junlong
junlong on 17 Mar 2016
Edited: KSSV on 2 Aug 2024
I was looking for the same thing, and I think you almost got the answer. Just turn the grid off.
set(gca, 'Layer', 'top');
grid off
Azzi Abdelmalek
Azzi Abdelmalek on 4 Feb 2013
Edited: Azzi Abdelmalek on 4 Feb 2013
Use
a=xlim;
set(gca,'xlabel',linspace(a(1),a(2),8))
%do the same for ylabel and zlabel

3 Comments

This did not work. I get the 'invalid object handle' error.
You must insert the above code after your plot
I didn't work for me as well. I'm getting Error using matlab.graphics.axis.Axes/set
Error setting property 'XLabel' of class 'Axes':
Value must be a handle.

Sign in to comment.

hAx = axes;
plot(1:10);
set(hAx,'XAxisLocation','Top');

3 Comments

This doesn't do what I want. It just moves the x axis to the top end of the y axis.
Is there a way to move it to the top of the z-axis instead?
Hi Bernoulli,
I guess I don't see why this wouldn't work:
hAx = axes;
surf(hAx,peaks)
set(hAx,'XAxisLocation','Top');
view(2)
xlabel('Hello World')
Please post a picture of what you expect, and where.

Sign in to comment.

Asked:

on 4 Feb 2013

Edited:

on 2 Aug 2024

Community Treasure Hunt

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

Start Hunting!