[Matplotlib FuncAnimation框架在添加新艺术家后未呈现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[Matplotlib FuncAnimation框架在添加新艺术家后未呈现相关的知识,希望对你有一定的参考价值。

我正在Matplotlib中制作动画,每隔几帧就会添加新的艺术家(特别是补丁),但是当我运行它时,添加新艺术家的每一帧都是完全空白的。我知道bligting有一些问题,因为当我将其关闭时它可以工作,但是我需要将其打开。正如文档要求一样,我返回在每个框架中创建或修改的每个形状。我正在使用MacOSX后端。

我的代码看起来与此相似:

from random import random
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation

fig = plt.figure()
axe = fig.add_axes([0, 0, 1, 1], frameon=False)
circles = []

def update(i):
    if not i % 10:
        new_circle = plt.Circle((random(), random()), 0.05, color='black')
        axe.add_patch(new_circle)
        circles.append(new_circle)

    for circle in circles:
        circle.center = (random(), random())

    return circles

animation = FuncAnimation(fig, update, frames=60, interval=1000/30, repeat=False, blit=True)
plt.show()
答案

[这似乎是MacOSX后端中matplotlib的错误,所以解决方案是通过使用不同的后端来解决该问题,或者尽可能不发送消息。

以上是关于[Matplotlib FuncAnimation框架在添加新艺术家后未呈现的主要内容,如果未能解决你的问题,请参考以下文章

Python Matplotlib FuncAnimation + Saving

python的matplotlib绘制动态图形(用animation中的FuncAnimation)

[Matplotlib FuncAnimation框架在添加新艺术家后未呈现

康威生命游戏的简单动画与 FuncAnimation

mathplotlib-Animation1:Sin函数衰减

是否可以将字符串转换为函数对象?