更新:我已经将原来的问题简化了很多。
我想创建一个动画情节,但是我的实现是跳过帧。
x = np.arange(0,5,0.1)
y = np.cos(3*x)
def f(i):
plt.plot(x[:i],y[:i]);
plt.gca().axis([0,5,-1,1])
plt.gca().set_title(f'{i}')
interactive(f, i=Play(value=0, min=0, max=50, step=1))
它不是我期望的步长(1),而是每帧大约5步播放。
笔记本和jupyterlab以及行内和笔记本前端(%matplotlib notebook
)上的行为都发生了
答案 0 :(得分:0)
我认为这与执行绘图功能所花费的时间有关。尝试在绘制之间更改interval
,看起来像这样以毫秒为单位。
%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
from ipywidgets import *
x = np.arange(0,5,0.1)
y = np.cos(3*x)
def f(i):
plt.plot(x[:i],y[:i]);
plt.gca().axis([0,5,-1,1])
plt.gca().set_title(f'{i}')
interactive(f, i=Play(value=0, min=0, max=50, step=1, interval=500))