交互模式与动画 - python

计算科学 Python
2021-11-30 11:43:21

就性能而言,是 matplotlib 交互模式还是 matplotlib 动画更好?

我有来自串行端口的连续数据流。我得到 2 个度量,比如说 var1 和 var2。我需要将它们绘制在 3d 图中,添加第 3 维,即时间。我已经尝试了基于离子的不同方法,但我无法得到我想要的。我看过很多动画的例子,但没有一个适合我的目的。我在争论哪个离子或动画更快,因为数据流具有高频更新。所以我需要将数据 var1 更新为 x 并将 var2 更新为 y 并有一个滑动的 z 轴,时间在流逝。

另外,在 3d 图中是否有类似于“set_xdata”的东西?

1个回答

matplotlib.animation是一种不错的方法,因为您可以指定帧或更新速率。这里有一个 3d 动画示例,包括关于set_data3D 绘图的评论:

http://matplotlib.org/1.4.3/examples/animation/simple_3danim.html

这里有另一个来自 Arduino 板的绘图数据示例:

https://gist.github.com/electronut/d5e5f68c610821e311b0

一般来说,使用你自己的逻辑混合plt.ionplt.draw这样比使用更复杂matplotlib.animation,所以我推荐你使用后者,因为它专门用于这种任务,我想性能会更好。