How to add title to subplots in Matplotlib How to add title to subplots in Matplotlib python python

How to add title to subplots in Matplotlib

ax.title.set_text('My Plot Title') seems to work too.

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')

matplotlib add titles on subplots

ax.set_title() should set the titles for separate subplots:

import matplotlib.pyplot as pltif __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)

Can you check if this code works for you? Maybe something overwrites them later?

A shorthand answer assuming import matplotlib.pyplot as plt:


as in:


Then there is no need for superfluous variables.