当前位置:  开发笔记 > 编程语言 > 正文

matplotlib funcAnimation没有调用传递的函数

如何解决《matplotlibfuncAnimation没有调用传递的函数》经验,为你挑选了1个好方法。

我正在尝试使机器人的链接动画化,但没有成功。FuncAnimation永远不会调用动画函数-永远不会执行print语句。任何帮助将不胜感激。我的代码:

joints = np.array([robot_kinematics.getJoints(a[0]) for a in path])
# this is [5x9x3]

fig    = plt.figure()
ax     = fig.add_subplot(111, projection='3d')
colors = 'brgymcwkk'
lines  = [ax.plot([], [], [])[0] for i,c in enumerate(colors)]
pt     = ax.plot([], [], [])[0] 


def animate(i,lines,pts):
   print ('called')
   for j,line in enumerate(lines):
       line.set_data(joints[i,j,0:2])
       line.set_3d_properties(joints[i,j,2])
   pts.set_data(joints[i,:,0:2])
   pts.set_3d_properties(joints[i,:,2])

   return lines,pts

a = animation.FuncAnimation(fig, animate, 25, fargs=(lines,pt),interval=50, blit=False)    
plt.show()

JoshuaF.. 6

必须将FuncAnimation创建的对象显然分配给全局变量。如果将其分配给局部变量(如我在此处所做的那样),则不会发生任何事情。



1> JoshuaF..:

必须将FuncAnimation创建的对象显然分配给全局变量。如果将其分配给局部变量(如我在此处所做的那样),则不会发生任何事情。

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有