投稿问答最小化  关闭

万维书刊APP下载

Matlab如何隐藏坐标轴框线,但保留刻度及刻度标签

2023/5/23 14:07:42  阅读:145 发布者:

假如我们用Matlab绘制了这样一幅堆叠图:

看起来,哪哪都好,但就是感觉两条黑色的坐标轴框线有些碍事。

于是想,该怎么去掉呢?

网上对于这一问题比较常见的解答是,将坐标轴颜色设置为背景颜色:

set(gca,'XColor', [1 1 1], 'YColor', [1 1 1])

但是你会发现,虽然坐标轴“隐藏”了,但是连同刻度以及刻度标签也一起看不见了。

或者直接关闭坐标轴:

axis off

但显然也不是我们想要的效果。

如果你的脑袋够灵活,可能会想到:

直接画两条白线盖住坐标轴线不就好了吗?

hold on

a = axis;

plot([a(1) a(2)],[a(3) a(3)],'w','linewidth',1.5);

plot([a(1) a(1)],[a(3) a(4)],'w','linewidth',1.5);

set(gca,'layer','bottom')

确实,这样基本算是实现我们想要的效果了。

但其实,还有一种更加简单的方法。

这一方法用到了Matlab的隐藏命令(Yair Altman, 2014):

% 消除坐标轴线

hAxes = gca;

hAxes.XRuler.Axle.LineStyle = 'none';

hAxes.YRuler.Axle.LineStyle = 'none';

以上。

转自:“阿昆的科研日常”微信公众号

如有侵权,请联系本站删除!


  • 万维QQ投稿交流群    招募志愿者

    版权所有 Copyright@2009-2015豫ICP证合字09037080号

     纯自助论文投稿平台    E-mail:eshukan@163.com