Вам просто нужно обернуть существующий код в цикл 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
В Постсозданном событии:
rmdir /Q /S $(TargetDir)de
rmdir /Q /S $(TargetDir)fr
rmdir /Q /S $(TargetDir)it
rmdir /Q /S $(TargetDir)ja
rmdir /Q /S $(TargetDir)ko
rmdir /Q /S $(TargetDir)zh-Hans
rmdir /Q /S $(TargetDir)zh-Hant
rmdir /Q /S $(TargetDir)es
Как насчет того, чтобы использовать сборку сообщения ступают для чистки то, в чем Вы не нуждаетесь? Сделать это: щелкните правой кнопкой по проекту-> Свойства-> События Сборки, Чем в сборке сообщения, можно использовать стандартные команды командной строки окон.
Если вы посмотрите в эти папки после сборки проекта, вы увидите в них кучу dll и / или файлов ресурсов. DLL / ресурсы, которые вы видите в папке, являются причиной создания самих папок. Поскольку вы ссылаетесь на эти DLL в своем проекте, при сборке проекта ссылка берет эти файлы из папки SDK (или откуда бы они ни делались).
Итак, в качестве примера, если вы посмотрите на System.Windows .Controls.dll, который будет установлен в папку% ProgramFiles% \ MicrosoftSDKs \ Silverlight \ v3.0 \ Libraries \ Client. В этой папке вы увидите те же папки, которые создаются при сборке (de, fr, it и т. Д.). Поэтому, чтобы предотвратить их создание, вы можете сделать несколько вещей:
1) Скопируйте dll в отдельную папку и укажите ссылку на этот файл. Мне пришлось фактически удалить dll из папки sdk, чтобы ссылка работала в VS 2010, не уверен, что только ссылка будет исправлена в 2008 году.
2) Переименуйте или удалите глобальные папки и файлы из самого SDK. Это повлияет на все проекты, а не только на ваш отдельный проект, но может решить проблему за вас.
Удачи!