自动换行文本#

Matplotlib 可以自动换行文本,但如果文本太长,文本仍会稍微显示在轴边界之外。

注意:自动换行与 savefig(..., bbox_inches='tight') 不兼容。“tight”设置会重新缩放画布以容纳所有内容,并且会在换行之前发生。这会影响 IPython 和 Jupyter 笔记本中的 %matplotlib inline,其中 inline 设置在将图像保存到嵌入时默认使用 bbox_inches='tight'

autowrap
import matplotlib.pyplot as plt

fig = plt.figure()
plt.axis((0, 10, 0, 10))
t = ("This is a really long string that I'd rather have wrapped so that it "
     "doesn't go outside of the figure, but if it's long enough it will go "
     "off the top or bottom!")
plt.text(4, 1, t, ha='left', rotation=15, wrap=True)
plt.text(6, 5, t, ha='left', rotation=15, wrap=True)
plt.text(5, 5, t, ha='right', rotation=-15, wrap=True)
plt.text(5, 10, t, fontsize=18, style='oblique', ha='center',
         va='top', wrap=True)
plt.text(3, 4, t, family='serif', style='italic', ha='right', wrap=True)
plt.text(-1, 0, t, ha='left', rotation=-15, wrap=True)

plt.show()

脚本的总运行时间:(0 分钟 1.006 秒)

由 Sphinx-Gallery 生成的画廊