Вам просто нужно обернуть существующий код в цикл for для разных фигур, каждая из которых содержит 20 подфигур.Хитрость заключается в том, чтобы затем изменить значения ключей, используя индекс (20*i)+key
, чтобы получить все 200 ключей.Для i=0
(первая цифра) вы получите 1, 2, 3, ... 19, 20. Для i=1
(вторая цифра) вы получите 21, 22, 23, ... 39, 40 ии так далее.
Ниже приведена модифицированная версия вашего кода.У меня нет данных, поэтому я не могу их опробовать.Если это не сработает, дайте мне знать.Как указывает @DavidG, plt.show()
должно быть вне цикла for.
grouped = dataset.groupby('product_number')
ncols = 4
nrows = int(np.ceil(grouped.ngroups/40))
for i in range(10):
fig, axes = plt.subplots(figsize=(12,4), nrows = nrows, ncols = ncols)
for (key, ax) in zip(grouped.groups.keys(), axes.flatten()):
grouped.get_group((20*i)+key).plot(x='TimeElapsed', y='StepID', ax=ax, sharex = True, sharey = True)
ax.set_title('product_number=%d'%((20*i)+key))
ax.legend()
plt.show() # Mind the indentation