在python中创建具有变化时间间隔的动画

时间:2018-10-01 00:47:16

标签: python animation gif animated-gif pythonplotter

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt 
import matplotlib.animation as animation
fig, ax = plt.subplots(figsize=(3,9))
dot, = ax.plot([], [], 'ro')

def init():
    ax.set_xlim(0,1)
    ax.set_ylim(0,3)
    return

def gen_dot():
    for i in range(len(list_x_y)):
    newdot = list_x_y[i]
    yield newdot

def update_dot(newd):
    dot.set_data(newd[0],newd[1])
    return dot

ani = animation.FuncAnimation(fig, update_dot, frames = gen_dot, interval = 100, 
init_func=init)
ani.save('Steps.gif',writer='imagemagick',fps=24)
plt.show()

嘿,伙计们,所以我试图用上面显示的代码来模仿真实的人在跑步机上行走的动画。问题是,我需要可变的时间间隔,以使人不能以恒定的速度工作,这根本不现实。


我认为动画功能可能不支持变化的时间间隔功能,因此我尝试使用For循环并获取时间间隔列表,以便每次在for循环中它将休眠特定的时间并继续...但是,JupyterNotebook不会按预期的那样刷新帧,在周期结束时创建静态图像...有什么办法可以创建具有不同时间间隔的gif?我想也许我可以保存所有帧并使用imageio创建gif ...但是imageio是否也需要不同的时间间隔作为输入?我为这个问题苦苦挣扎了数小时……任何帮助将不胜感激。谢谢!

0 个答案:

没有答案