Я пытаюсь создать анимированную диаграмму Matplotlib, которая использует блиттинг.Я хотел бы включить точечный график, линейные графики и аннотации в одном и том же субплоте.Тем не менее, все примеры, которые я нашел, например, https://matplotlib.org/gallery/animation/bayes_update.html, похоже, возвращают только одного исполнителя, например, только линейный сюжет.(Я думаю, что я правильно использую термин «художник», но, возможно, это не так.)
Я пытался объединить несколько художников, но, похоже, это не сработало.Например, ниже, линия графика не обновляется, и если для blit установлено значение True, я получаю AttributeError: у объекта «Artists» нет атрибута «set_animated»
from collections import namedtuple
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation
fig, ax = plt.subplots()
Artists = namedtuple('Artists', ('scatter', 'plot'))
artists = Artists(
ax.scatter([], []),
ax.plot([], [], animated=True)[0],
)
def init():
ax.set_xlim(-1, 1)
ax.set_ylim(-1, 1)
return artists,
def update(frame):
artists.scatter.set_offsets([[0, 0]])
artists.plot.set_data([0, 1], [0, 1])
return artists,
ani = FuncAnimation(
fig=fig,
func=update,
init_func=init,
blit=True)
plt.show()
Какой правильный путьделать блиттинг с несколькими художниками?