在Matplotlib中是否有一个函数可以绘制图形下方的标题框?我已经在Google上搜索过,但没有找到这样的功能。
希望能够像图片中显示的那样实现。
在Matplotlib中是否有一个函数可以绘制图形下方的标题框?我已经在Google上搜索过,但没有找到这样的功能。
希望能够像图片中显示的那样实现。
可以使用 pyplot.text
。以下是一些示例代码:
from matplotlib import pyplot as plt
import numpy as np
x = np.arange(0,3,.25)
y = np.sin(x)
txt = '''
Lorem ipsum dolor sit amet, consectetur adipisicing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris
nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in
reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim id est laborum.'''
fig = plt.figure()
ax1 = fig.add_axes((.1,.4,.8,.5))
ax1.bar(x,y,.2)
fig.text(.1,.1,txt)
plt.show()
它会生成这个:
如果你想要自动的换行,可以看看这篇文章。
我不确定我能帮你完全调整对齐。
您可以使用legend
函数(pylab.legend
)。如果您想要它在轴外,您可以传递给它一个特定的位置(loc
关键字参数)。
编辑: legend函数接受一个title
参数,这可能有助于获得您想要的内容。但是,对于没有任何图例的标题,Paul的答案更合适。
figtext
)中添加标题,而不是在绘图坐标系(text
)中添加。 - tom10help(fig.text)
表明此函数将文本放置在图形的“相对0-1坐标”中。我认为您将fig.text
与ax.text
混淆了。 - Paultext()
x
和y
参数手动调整文本位置。 - Paulwrap='True'
标志来获取文本换行。 - Kaushik Ghose