Найти - Пользователи
Полная версия: Matplotlib - необходим асинхронный вывод на график.
Начало » Python для новичков » Matplotlib - необходим асинхронный вывод на график.
1
kt315e
При выполнении кода с использованием Matplotlib, например:
import matplotlib.pyplot as plt
plt.plot([1,2,3])
plt.show()
после выполнения метода show() выполнение скрипта останавливается и управление передаётся окну графика. Пока это окно пользователь ручками не закроет выполнение скрипта не вознобновляется. Необходимо поведение, когда после вывода графика можно было продолжить выполнение скрипта и в частности закрыть окно програмно.
Evgeny
Посмотрите вот такой код:
import matplotlib.pyplot as plt
import numpy as np

a = plt.figure()
a.show()

for count in range(14):
a.clear()
x = np.arange(-10+count,10+count,0.1)
y = np.sin(x)
plt.plot(x,y)
plt.draw()

plt.close(a)
kt315e
Evgeny
Посмотрите вот такой код:
import matplotlib.pyplot as plt
import numpy as np

a = plt.figure()
a.show()

for count in range(14):
a.clear()
x = np.arange(-10+count,10+count,0.1)
y = np.sin(x)
plt.plot(x,y)
plt.draw()

plt.close(a)
Чтобы у меня стала рисоватся картинка необходимо было включить перед первым вызовам draw интерактивный режим:
plt.ion()
Evgeny
Моя программа успешно отрисовывает графики и закрывается без ошибок.
Что изменит plt.ion()?
kt315e
Я не использовал figure. По видимому при использовании figure автоматически переходит в интерактивный режим.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB