matplotlib.pyplot show () без очистки фигуры - PullRequest
0 голосов
/ 26 мая 2020

Я использую matplotlib.pyplot в интерактивном режиме. Я хочу проверить, правильно ли я отформатировал фигуру, используя plt.show(), но каждый раз, когда я это делаю, фигура очищается, и мне нужно снова построить ее. Я бы хотел иметь возможность просматривать сюжет в интерактивном режиме без очистки рисунка.

Что происходит:

>>> plt.plot(np.arange(5))
>>> plt.show()
<figure-displays>

>>> plt.show()
<nothing-happens>

>>> plt.savefig('my_figure.png')
<empty-file-is-saved>

Что я хочу:

>>> plt.plot(np.arange(5))
>>> plt.show()
<figure-displays>

>>> plt.show()
<figure-displays>

>>> plt.savefig('my_figure.png')
<figure-is-saved>

1 Ответ

0 голосов
/ 26 мая 2020

Если вы хотите видеть изменения каждый раз, вы можете сохранить несколько файлов, и пока вы не вызываете plt.close (), графики будут просто добавлять.

import matplotlib.pyplot as plt

plt.plot([5,1,4],[3,2,1])

plt.savefig('1.png')

plt.plot([3,2,1],[1,2,3])

plt.savefig('2.png')

Images

Файлов может быть много, поэтому лучше сделать это в новой папке. Если вы программируете только с оболочкой python, вот что вы можете сделать, чтобы изменить каталоги:

>>> import os
>>> path = 'C:\\Users\\Caitlin\\Desktop\\New folder'
>>> os.chdir(path)
>>>

Если вы используете файл python, просто поместите файл в Новая папка.

Или вы можете просто добавить путь в savefig():

plt.savefig('C:\\Users\\Caitlin\\Desktop\\New folder\\1.png')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...