plt.subplots(1, 1)
создает 1: 1 сетку подзаговоров, т. Е. Имеется только один участок. Таким образом, возвращаемый объект - это сами оси, а не массив. Я подозреваю, что вы ищете либо plt.subplots(1, 2)
, либо plt.subplots(2, 1)
, в зависимости от того, как вы хотите, чтобы оси были ориентированы.
Кроме того, как только вы исправите это, вы обнаружите, что в вашем коде есть другие ошибки. Вы, кажется, смешиваете некоторые имена функций из matplotlib.pyplot
(plt
) с методами на объектах осей. Например, чтобы установить предел y, вы можете использовать plt.ylim(...)
или axes.set_ylim(...)
, но не axes.ylim(...)
. Я думаю, у вас возникнет эта проблема при попытке установить ylim
, xlim
, title
, xlabel
и ylabel
, и все это можно исправить, просто добавив set_...
в начале каждого собственности, если я правильно помню.
Edit:
Кроме того, я только что заметил, что вы устанавливаете заголовок на каждой оси дважды, первый раз неправильно и второй раз правильно; Вы, вероятно, хотите только один раз. Также не уверен, что происходит с вызовами clf
и pause
(оба из которых, кстати, должны быть plt
, а не объектом оси). Вы должны просто сделать plt.show()
после вызова обеих ваших функций.