Я пытаюсь анимировать диаграмму с накоплением в процентах, но данные не обновляются после первого кадра. Данные начинаются как один столбец, и с каждым кадром добавляется новый столбец данных. У меня работает масштабирование по оси X, но я не знаю, как обновить содержимое графика.
Я использую FuncAnimation для обновления двух вспомогательных участков (другой является диаграммой рассеяния). Объект scatterplot имеет функцию set_offsets (), которая работает для обновления точек scatterplot, но не существует эквивалентной функции для стекового графика. Похоже, что когда я создаю стековый график, он возвращает объект списка, а не тип объекта, определенный в matplotlib:
print(type(self.sc))
<class 'matplotlib.collections.PathCollection'>
print(type(self.stack))
<class 'list'>
Похоже, это список объектов matplotlib.collections.PolyCollection, по одному для каждого элемент в стеке. Я пробовал следующее, но он все равно не будет обновлять график (хотя он также не выдает никаких ошибок):
for i in range(0, len(self.hist)):
self.hist[i].set_offsets(self.popArray[i])
return self.sc, self.hist