У меня есть объект класса с атрибутом display(self)
:
import matplotlib.pyplot as plt
class Obj:
def display(self) -> None:
fig = plt.figure()
sub = fig.add_subplot()
sub.plot(...)
plt.show()
def dostuff(self) -> 'stuff':
...
self.display()
...
self.display()
...
self.display()
return
Я использую эту функцию, чтобы иметь лучшее визуальное представление о том, как мой атрибут dostuff(self)
справляется со своей задачей. Все работает по назначению, когда зарегистрирована команда self.display()
, scrypt приостанавливает выполнение и рисует материал. Однако единственный способ возобновить работу — это закрыть окно matplotlib вручную, а затем программа снова открывает другое окно со следующими изменениями.
Есть ли способ реализовать кнопку или лучший способ просмотра следующих изменений без необходимости закрывать и открывать новое окно каждый раз?
plt.show имеет параметр block
. Если вы установите его на False
, то выполнение не будет заблокировано. Надеюсь это поможет.