2012-05-17 47 views
2

我有几个子图(一个在另一个下面),每个子图的y轴以不同的值打勾(比如说第一个是1:5,第二个是10:1000等)。将ylabel与子图对齐

所以结果是每个ylabel将有不同的对齐方式。 有没有办法解决这个问题?例如 - 将所有ylabels对齐到左边?还是有另一种解决方案?

回答

2

要定位ylabel使用

ylabel('my label', 'position',[x y z]) 
+0

但我不想定位子图。这些都很好。标签是我想要对齐的那些标签。 – RNTL

+0

我再次更新了我的答案。 –

+0

我正在改写这个问题 - 当你绘制几个子图,一个在另一个下面时,如果子图的yticks不在同一个尺度上,那么子图的ylabel将垂直未对齐。问题是如何避免它,而不改变地块本身的位置。 – RNTL

1

试试这个:

xpos = -18 % (find this out from get(yl,'pos') on the desired label x-location) 
yl=ylabel('Label Here') 
pos=get(yl,'Pos') 
set(yl,'Pos',[xpos pos(2) pos(3)]) 

同样,对于每一个插曲做到这一点。您会发现x位置始终保留,其他位置为默认位置。

0

这是在这里得到解答 pyplot axes labels for subplots

使用

ax1.get_yaxis().set_label_coords(-0.1,0.5) ax2.get_yaxis().set_label_coords(-0.1,0.5)

这将在同一y坐标为原来的插曲对齐。