在 VS Code 笔记本中制作动画/更新 matplotlib 图

rgo*_*gov 17 python matplotlib visual-studio-code jupyter-notebook

使用 Jupyter Notebook,我可以创建一个动画图(基于此示例代码):

%matplotlib notebook
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 init():
    line.set_ydata([np.nan] * len(x))
    return line,

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

ani = animation.FuncAnimation(
    fig, animate, init_func=init, interval=2, blit=True, save_count=50)

plt.show()
Run Code Online (Sandbox Code Playgroud)

是否可以在 Visual Studio Code 的笔记本编辑器中执行此操作?我认为它涉及VS Code似乎不支持的魔术%matplotlib notebook模式,但我不知道是否有替代方案。

Ian*_*nhi 28

看起来 vscode 支持 ipywidgets ( https://github.com/microsoft/vscode-python/issues/3429 )。因此您可以使用matplotlib 的ipympl后端。

要使用它,您可以使用%matplotlib ipympl魔法。


%matplotlib notebook做了一些针对 jupyter Notebook 的 javascript 注入,因此它在 vscode 甚至 jupyter lab 中都不起作用。

  • 您可能还需要安装对其的支持,例如“pip install ipympl” (10认同)
  • 我尝试过,小部件和 ipympl 都没有显示情节...... (2认同)