removing ticks on top and right axes
207 次查看(过去 30 天)
显示 更早的评论
Hello,
My plot in matlab, by default, has ticks on both left and right and top and bottom. However, I want ticks to be only on left and bottom while keeping the axes on all four sides. Is there any command to remove ticks on top and right sides of the box.
Many thanks in advance!
0 个评论
回答(2 个)
Robert U
2022-11-25
Hi Reddy Yettapu,
it is not possible to control the top and right axis separately. You can add the desired behavior manually with the drawback that it won't scale with the figure if you zoom out.
arg = 0:9;
data = rand(1,10);
fh = figure;
ah = axes(fh);
plot(ah,arg,data,'o-');
ah.Box = 'off';
xline(ah,ah.XLim(2))
yline(ah,ah.YLim(2))
See here as well: https://de.mathworks.com/matlabcentral/answers/322324-is-there-a-way-to-remove-the-ticks-on-the-right-and-upper-side-when-the-box-is-on
Kind regards,
Robert
3 个评论
Robert U
2022-11-28
Hi Reddy Yettapu,
could you send the figure as mat-file? It does not need to contain your original data, dummy data would be fine.
The top and right axes are missing since they are switched off. The xline() and yline() commands only provide the appearance of the box. These commands need to be executed when the figure is already finished. The lines are fixed to the x- and y-values and will not scale with the graph.
Kind regards,
Robert
Sulaymon Eshkabilov
2022-11-25
Here is one easy solution to manipulate ticks, e.g.:
x = linspace(0,pi);
y = sin(x.^2);
plot(x,y), grid on
yticks([ ])
xticks([0 pi/3 pi/2 2*pi/3 pi])
xticklabels({'x=0','x = \pi/3', 'x=\pi/2','x = 2*\pi/3', 'x=\pi'})
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Axes Appearance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!