您现在的位置是:首页 >技术教程 >Matlab如何隐藏坐标轴框线,但保留刻度及刻度标签网站首页技术教程
Matlab如何隐藏坐标轴框线,但保留刻度及刻度标签
简介Matlab如何隐藏坐标轴框线,但保留刻度及刻度标签
假如我们用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';
从整体效果上看,这一方法比画线法更加丝滑,而且看不出处理过的痕迹,所以推荐大家尝试使用。
特别提示:本期内容『数据+代码』已上传资源群中,加群的朋友请自行下载。有需要的朋友可以关注同名公号【阿昆的科研日常】,后台回复关键词【绘图桶】查看加入方式。
以上。
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。