Matplotlib字幕在旧标题上打印


问题内容

我试图使用它suptitle来打印标题,并且我想偶尔替换该标题。目前,我正在使用:

self.ui.canvas1.figure.suptitle(title)

其中Figure是Matplotlib图形(canvas1是mplCanvas,但不相关),title是python字符串。

目前,这是可行的,除了当我稍后再次运行此代码时,它只是将新文本打印在旧文本之上,从而导致标题混乱,不可读。

您如何替换旧suptitle的图形,而不是仅仅打印出来?

谢谢,

泰勒


问题答案:

figure.suptitle返回一个matplotlib.text.Text实例。您可以保存并设置新标题:

txt = fig.suptitle('A test title')
txt.set_text('A better title')
plt.draw()