如何将标题添加到Matplotlib的子图中?

我有一个数字,其中包含许多子图。

fig = plt.figure(num=None, figsize=(26, 12), dpi=80, facecolor='w', edgecolor='k') fig.canvas.set_window_title('Window Title') # Returns the Axes instance ax = fig.add_subplot(311) ax2 = fig.add_subplot(312) ax3 = fig.add_subplot(313) 

我如何给子图添加标题?

fig.suptitle为所有graphics添加标题,虽然ax.set_title()存在,但后者不会为我的子图添加任何标题。

感谢您的帮助。

编辑:纠正了关于set_title()错字。 感谢Rutger Kassies

ax.set_title()应该为单独的子图设置标题:

 import matplotlib.pyplot as plt if __name__ == "__main__": data = [1, 2, 3, 4, 5] fig = plt.figure() fig.suptitle("Title for whole figure", fontsize=16) ax = plt.subplot("211") ax.set_title("Title for first plot") ax.plot(data) ax = plt.subplot("212") ax.set_title("Title for second plot") ax.plot(data) plt.show() 

你能检查这个代码是否适合你? 也许有些东西以后会覆盖它们?

ax.title.set_text('My Plot Title')似乎也起作用。

 fig = plt.figure() ax1 = fig.add_subplot(221) ax2 = fig.add_subplot(222) ax3 = fig.add_subplot(223) ax4 = fig.add_subplot(224) ax1.title.set_text('First Plot') ax2.title.set_text('Second Plot') ax3.title.set_text('Third Plot') ax4.title.set_text('Fourth Plot') plt.show() 

matplotlib在子图上添加标题