2013-10-20 45 views
1

我有一个包含坐标列表的文件。我想把每个点都一个接一个地绘制出来,创建一些动画。用Python和Matplotlib改变绘图

假设我得到了这样的数据,我应该怎么做才能让每个点绘制一秒钟,然后用下一个点代替?

... 
for line in f: 
    data = line.split(',') 
    x_coord = data[0] 
    y_coord = data[1] 
    ... 
+2

也许你可以使用[matplotlib.animation](http://stackoverflow.com/questions/16132798/python-animation-graph)? –

+0

查看类似http://stackoverflow.com/questions/19470324/first-set-of-scatter-plot-data-remains-on-the-graph-during-animation-with-pyth/19471017#19471017的问题 – tacaswell

回答

1

绘制一个个不是问题的答案 - 你不可能能够控制在每个plot呼叫时的屏幕上弹出的速度,因为这可能是窗口管理依赖,并荣获”创造一个良好的用户体验。

如果您不需要live动画,则可以将每个绘图呈现为PNG,然后使用mencoder生成动画,如Matplotlib FAQ中所述。

如果你想要一个实时动画,这就是matplotlib's animation的用途。 Steinar Lima链接上面的Stack Overflow answer