Matplotlib 动画未在 PyCharm 中显示

blu*_*sky 6 python matplotlib pycharm

尝试执行此代码:

"""
A simple example of an animated plot
"""
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

fig, ax = plt.subplots()

x = np.arange(0, 2*np.pi, 0.01)
line, = ax.plot(x, np.sin(x))


def animate(i):
    line.set_ydata(np.sin(x + i/10.0))  # update the data
    return line,


# Init only required for blitting to give a clean slate.
def init():
    line.set_ydata(np.ma.array(x, mask=True))
    return line,

ani = animation.FuncAnimation(fig, animate, np.arange(1, 200), init_func=init,
                              interval=25, blit=True)
plt.show()
Run Code Online (Sandbox Code Playgroud)

源代码:https : //matplotlib.org/examples/animation/simple_anim.html

在 PyCharm 中显示:

在此处输入图片说明

但是情节不是作为动画执行的。

如何将此图作为动画执行?我是否需要编辑此 python 代码的 PyCharm 配置? 在此处输入图片说明

blu*_*sky 7

这段代码成功了:

"""
A simple example of an animated plot
"""


    import matplotlib; matplotlib.use("TkAgg")
    import numpy as np
    import matplotlib.pyplot as plt
    import matplotlib.animation as animation


    fig, ax = plt.subplots()

    x = np.arange(0, 2*np.pi, 0.01)
    line, = ax.plot(x, np.sin(x))


    def animate(i):
        line.set_ydata(np.sin(x + i/10.0))  # update the data
        return line,


    # Init only required for blitting to give a clean slate.
    def init():
        line.set_ydata(np.ma.array(x, mask=True))
        return line,

    ani = animation.FuncAnimation(fig, animate, np.arange(1, 20000), init_func=init,
                                  interval=25, blit=True)
    plt.show()
Run Code Online (Sandbox Code Playgroud)

注意添加 import matplotlib; matplotlib.use("TkAgg")

此外,这个问题/答案有所帮助:Matplotlib 动画在 PyCharm 中不起作用