在Matplotlib中减少ax.annotate的绘图高度

时间:2017-05-19 02:43:47

标签: python matplotlib

我想在正确的情节下打印文字(“KL距离...”)。右图可以更短,文本可以多行打印。有没有办法在正确的情节下框出并打印出来?

enter image description here

现在我在Matplotlib中使用ax.annotate。

import matplotlib.pyplot as plt
ax2 = plt.subplot2grid((1, 3), (0, 2), rowspan=1)
ax2.plot(tracking)
track_label = "KL distance : ", tracking
ax2.annotate(track_label, xy=(0.5, 0),
        xycoords=('axes fraction', 'figure fraction'),
        xytext=(0, 10),  
        textcoords='offset points',
        size=7,ha='center', va='bottom')

1 个答案:

答案 0 :(得分:0)

matplotlib中没有“文本框”或类似内容。您可以自己在文本中引入换行符,也可以让文本在图形边界处换行,如this example所示。

要使文本与右侧子图对齐,可以将其放在轴坐标

ax2.text(0,-0.1, track_label, ha="left", wrap=True)