我希望有一个迭代绘制的图形,允许跳到下一帧,停止它并返回到前一帧.
我已经看过matplotlib动画模块,如果有一种方法可以实现以前的帧功能(比如在按下某个键的情况下向后运行动画几帧),这将是完美的
这样的事情会很好:
def update_frame(i, data):
fig.set_data(data[i])
Run Code Online (Sandbox Code Playgroud)
但在某种程度上,我可以明确地管理迭代器是增加还是减少.
有没有办法在matplotlib中做到这一点?我应该寻找一个不同的python模块吗?
我使用matplotlib并遵循此答案创建了一个交互式绘图。该图使用滑块以允许用户控制点的垂直(y 轴)位置,并在它们发生变化时为它们拟合样条曲线。完成此操作的代码在这里:
import matplotlib.animation as animation
from matplotlib.widgets import Slider
import matplotlib as mpl
from matplotlib import pyplot as plt
import scipy.interpolate as inter
import numpy as np
func = lambda x: 0.1*x**2
#get a list of points to fit a spline to as well
N = 10
xmin = 0
xmax = 10
x = np.linspace(xmin,xmax,N)
#spline fit
yvals = func(x)
spline = inter.InterpolatedUnivariateSpline (x, yvals)
#figure.subplot.right
mpl.rcParams['figure.subplot.right'] = 0.8
#set up a plot
fig,axes …Run Code Online (Sandbox Code Playgroud)