在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轴之间的距离不变?
发布于 2013-01-31 03:22:11
可以对y标签位置使用规格化单位。试试这个:
set(y, 'Units', 'Normalized', 'Position', [-0.1, 0.5, 0]);归一化的单位总是相对于0 1的,所以数据的范围并不重要。
https://stackoverflow.com/questions/14611259
复制相似问题