我正在尝试为小提琴图制作动画,所以我从我认为应该非常基本的东西开始,但它不起作用。我认为问题在于 violinplot 不接受 set_data,但我不知道如何将不断变化的数据传递给 violinplot。对于这个例子,我想要一个均值缓慢移动到更高值的图。如果我咆哮了错误的树,请就可以为小提琴图设置动画的代码提出建议。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig, ax = plt.subplots()
data = np.random.rand(100)
def animate(i):
v.set_data(data+i) # update the data
return v
v = ax.violinplot([])
ax.set_ylim(0,200)
v_ani = animation.FuncAnimation(fig, animate, np.arange(1, 200),
interval=50, blit=True)
Run Code Online (Sandbox Code Playgroud)