2010-09-07 132 views
14

考虑像绘制图表Matlab的带边框,蜱,对图线顶部

 
figure 
plot(sin(0:0.01:pi)) 
axis tight 
set(gca,'box','on','ticklength',[0.02 0.05]) 

然后导出图形为PDF或什么的。曲线的线条是,位于刻度标签和轴的顶部上。 (此外,轴的线不能正确对齐,但这是另一回事。)

有没有一种方法(可以自动化)将轴绘制在顶部?

回答

20

尝试:

set(gca, 'Layer','top') 

根据documentation page

{bottom} | top 

绘制轴线的线的下方或上方的图形对象。确定 是否在任何二维视图(例如,当您沿着x轴,y轴或 z轴观察时)在 上方或下方的轴子对象上绘制轴线和刻度标记 。使用此属性将 网格线和刻度线放在 图像的顶部。

和在视觉上看到效果(在1200%缩放),我保存图中为PDF文件:

alt text

默认(层=底部):

alt text

with Layer = top:

alt text

+0

哇,我不知道这个存在。我对“获得(gca)”并不陌生,但是这使我没有注意到。谢谢! – 2010-09-07 03:49:00

+0

+1,解决了“待定”问题!谢谢! – zellus 2010-09-07 15:40:56