Функция субплота использует 3 параметра: subplot(x,y,n)
, где x
- это количество строк, y
- количество столбцов и n
- позиция вашего текущего графика.Таким образом, используя subplot(2, 1, i)
, вы сообщаете Matplotlib, что вам нужно 2 вспомогательных участка (один над другим).То, что вы хотите сделать, это либо ввести значение вручную, чтобы получить сетку.Тогда я создал функцию для автоматического вычисления оптимальных значений x
и y
, чтобы иметь квадратное отображение (или то, что было бы ближе к квадрату):
size = len(my_array_of_values)
final_x = 0
for i in range(10):
if pow(i,2) < size:
final_x += 1
final_y = ceil(size / final_x)
fig, axs = plt.subplots(final_y, final_x, sharex=False, sharey=False)
Тогда выполучит доступ к вашему другому подзаговору, используя это: current_axis = axs[floor(i/final_x)][i%final_x]
, i
- это число итераций, которые вы в данный момент сделали.Дайте мне знать, если это работает для вас, или если я неправильно понял, чего вы хотели достичь.
Приветствия