Построение живой круговой диаграммы с использованием matplotlib pyplot - PullRequest
0 голосов
/ 12 октября 2018

Код:

import matplotlib.pyplot as plt
from time import sleep
for i in range(100):
    plt.pie([100-i,i])
    sleep(1)
    plt.show()

enter image description here

Проблема с моим кодом: - Всякий раз, когда значения plt.pie () меняются и круговая диаграммаВ этом случае выполнение цикла for кажется остановленным, и мне нужно закрыть окно круговой диаграммы, чтобы возобновить выполнение цикла for.

Что я хочу сделать: - plt.pie () отображает динамические изменения в своих значениях, не останавливая выполнение цикла.

спасибо.

Редактировать: Найдено решение.

import matplotlib.pyplot as plt
from time import sleep
for i in range(100):
   plt.pie([100-i, i])
   plt.pause(.001)
   plt.draw()
   sleep(1)

plt.show () - функция блокировки, поэтому вместо нее использовалась plt.draw () вместе с plt.pause (), и теперь она работает как задумано.

Пожалуйста, добавьте любое другое решение, если вы столкнулись.Еще раз спасибо

1 Ответ

0 голосов
/ 12 октября 2018

добавить plt.close() в цикл for

import matplotlib.pyplot as plt
from time import sleep
for i in range(100):
    plt.pie([100-i,i])
    sleep(1)
    plt.show()
    plt.close()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...