如何在Matplotlib中更改刻度标签和轴标签之间的分隔

时间:2014-02-03 22:18:19

标签: python matplotlib

当我使用Matplotlib时,我的轴标签通常看起来不太好(太靠近刻度标签)。

test image

如何设置刻度标签和轴标签之间的距离?我只需要扩大“星数”标签和相应的刻度标签之间的距离。也许latex \vspace{}正在运行,但我不知道如何实现它。 fig.subplots_adjust(left=)不是解决方案。

2 个答案:

答案 0 :(得分:12)

要使轴标签远离轴移动,可以在用于设置标签的相应方法的可选labelpad参数中包含参数,即ax.set_ylabel()ax.set_xlabel() 。此参数采用标量,该标量是轴与 points 中给出的标签之间的间距。

为了在使用底图drawparallels()方法时达到相同的效果,我相信您可以在参数xoffsetyoffset中加入参数,取决于您要更改文本位置的轴。这些参数的参数具有映射宽度的“单位”,意味着例如xoffset=0.05使x-ticks的偏移量为地图宽度的5%。

答案 1 :(得分:4)

这是真正的主观问题,但无论如何我都要采取刺:

figsize kwarg以英寸为单位获取图形的宽度和高度。

A4纸是8.3"到11.7"。所以,让我们说,为了争论,你想要1"边距。

paperheight = 11.7
paperwidth = 8.3
margin = 1.0

fig = plt.figure(figsize=(paperwidth - 2*margin, paperheight - 2*margin))

# plotting stuff

fig.tight_layout()
fig.savefig(...)

tight_layout()的调用将为标签提供更多空间,并确保所有内容尽可能扩展到图形边缘。