Matplotlib:如何调整图例标记和标签之间的空间?

时间:2017-01-24 11:44:43

标签: python matplotlib legend

我想调整图例标记和标签之间的空间。有时候这个空间太大了。有谁知道如何做到这一点?

感谢。

1 个答案:

答案 0 :(得分:17)

legend()有一个名为handletextpad的kwarg,可以满足您的需求。默认情况下,此值设置为0.8。来自docs

  

handletextpad:浮动或无

     

图例句柄和文本之间的填充。以字体大小测量   单位。

     

默认值为None,它将从中获取值   legend.handletextpad rcParam

因此,当您致电legend时,请添加该kwarg并尝试使用该值。类似的东西:

ax.legend(handletextpad=0.1)

请考虑以下事项:

import matplotlib.pyplot as plt

fig, (ax1, ax2) = plt.subplots(ncols=2)

ax1.plot(range(5), 'ro', label='handletextpad=0.8')
ax2.plot(range(5), 'bo', label='handletextpad=0.1')

ax1.legend()
ax2.legend(handletextpad=0.1)

plt.show()

enter image description here