Возможно, вас заинтересует тот факт, что с matplotlib версии 2.1 второй код из вопроса работает отлично.
Класс класса теперь имеет метод подзаголов. Класс Figure теперь имеет метод subplots (), который ведет себя так же, как pyplot.subplots (), но на существующем рисунке.
Пример:
import matplotlib.pyplot as plt fig = plt.figure() axes = fig.subplots(nrows=2, ncols=2) plt.show()