remove certain yticklabels from axis

I have a plot that has a yaxis range from 0 to 9.
I only want the yticklabels for 1 to 8 to be visible.
I have tried:
yticks = get(gca,'YTick');
ytickLabels = get(gca,'YTickLabel');
set(gca,'YTick',yticks(1:1:8), 'YTickLabel',ytickLabels(1:1:8));
But this doesnt work. How do I not show the 0 and the 9 on the ytick labels? Thanks

 Accepted Answer

Change the set call to:
set(gca,'YTick',1:1:8, 'YTickLabel',1:1:8);

2 Comments

Thankyou, I alos just worked out that this works too:
set(gca,'YTick',yticks(2:1:9), 'YTickLabel',ytickLabels(2:1:9));
My pleasure!
Yes. You can set the 'YTickLabel' vector to whatever you want, including strings (using a cell array). The only restriction is that you have to set the positions of the 'YTick' values, and there have to be equal numbers of 'YTick' and 'YTickLabel' entries.

Sign in to comment.

More Answers (1)

Ilham Hardy
Ilham Hardy on 6 Jan 2015
Edited: Ilham Hardy on 6 Jan 2015
Perhaps,
set(gca,'YLim',[1,8]);

1 Comment

But then I dont see the 0 and 9 grid line, I need to see these.

Sign in to comment.

Categories

Community Treasure Hunt

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

Start Hunting!