Matplotlib图例中的文本对齐
我试图在matplotlib轴图例中将条目右对齐(默认情况下它们是左对齐的),但是似乎找不到任何方法。我的设置如下:
(我已经使用ax.plot()命令向my_fig轴添加了数据和标签)
ax = my_fig.get_axes()[0]legend_font = FontProperties(size=10)
ax.legend(prop=legend_font, num_points=1, markerscale=0.5)
文档中有matplotlib
Axes的Legend关键字参数列表,但似乎没有任何简单的方法可以在那里设置图例条目的对齐方式。有人知道这样做的后门方式吗?谢谢。
编辑:
为了阐明我要达到的目标,现在我的传说如下:
Maneuver: 12-OCT-2011 12:00 UTC
Bias: 14-OCT-2011 06:00 UTC
我希望它看起来像:
Maneuver: 12-OCT-2011 12:00 UTC
Bias: 14-OCT-2011 06:00 UTC
回答:
您要寻找的后门如下:
# get the width of your widest label, since every label will need # to shift by this amount after we align to the right
shift = max([t.get_window_extent().width for t in legend.get_texts()])
for t in legend.get_texts():
t.set_ha('right') # ha is alias for horizontalalignment
t.set_position((shift,0))
以上是 Matplotlib图例中的文本对齐 的全部内容, 来源链接: utcz.com/qa/405783.html