alignment旋转xticklabels与他们各自的xticks

检查下图的x轴。 我如何将标签移动到左侧,使它们与各自的刻度alignment?

我正在旋转标签使用:

ax.set_xticks(xlabels_positions) ax.set_xticklabels(xlabels, rotation=45) 

但是,正如您所看到的那样,旋转以文本标签的中间为中心。 这使得它看起来像是向右移动。

我试着用这个来代替:

 ax.set_xticklabels(xlabels, rotation=45, rotation_mode="anchor") 

…但它没有做我想要的。 而"anchor"似乎是rotation_mode参数允许的唯一值。

例

您可以设置标签的水平alignment方式,请参阅下面的示例。 如果您想象旋转的标签周围有一个矩形框,矩形的哪一边您想与tickpointalignment?

给你的描述,你想:哈='正确'

 n=5 x = np.arange(n) y = np.sin(np.linspace(-3,3,n)) xlabels = ['Ticklabel %i' % i for i in range(n)] fig, axs = plt.subplots(1,3, figsize=(12,3)) ha = ['right', 'center', 'left'] for n, ax in enumerate(axs): ax.plot(x,y, 'o-') ax.set_title(ha[n]) ax.set_xticks(x) ax.set_xticklabels(xlabels, rotation=40, ha=ha[n]) 

在这里输入图像说明