如何在Matlab中调整y-label和y轴之间的距离?

时间:2013-01-30 18:35:48

标签: matlab matlab-figure

在Matlab中,如果我们不旋转包含多个字母的y标签,标签可能会与刻度数甚至y轴重叠。我们可以通过以下方式增加y标签和y轴之间的距离:

plot(A, B);
y=ylabel('xxx', 'rot', 0);  % do not rotate the y label
set(y, 'position', get(y,'position')-[0.1,0,0]);  % shift the y label to the left by 0.1

但问题是,如果我们将axis([0 1 0 25])更改为axis([0 10 0 25]),y标签和y轴之间的距离也会发生变化。是否有一种方便的方法将y标签稍微向左移动,但是当我们改变x的范围时,保持y标签和y轴之间的距离不变?

1 个答案:

答案 0 :(得分:17)

您可以将标准化单位用于y标签位置。试试这个:

set(y, 'Units', 'Normalized', 'Position', [-0.1, 0.5, 0]);

标准化单位始终相对于[0 1],因此数据范围无关紧要。