Python- 1秒绘制连续演示

时间:2012-10-01 18:37:34

标签: python matplotlib

我有一个包含数据的字典。对于每个条目,我想显示1秒的图并移动到下一个。要显示的图已经在外部脚本中编码。我想自动这样做。所以我遍历dict,显示第一组图[0],关闭图[0],显示图[1]关闭图[1] ...我想设置显示时间让我们说1秒和将情节全屏显示。在演示过程中我不想触摸计算机的问题。

import pylab as pl
import numpy as np

x = np.arange(-np.pi, np.pi, 0.1)         # only for the example purpose
myDict = {"sin":np.sin(x), "cos":np.cos(x), "exp":np.exp(x)}
for key in myDict:
    print myDict[key]
    pl.plt.plot(myDict[key])              # in origin coming from external function
    pl.plt.plot(x)                        # in origin coming from external function
    pl.plt.show()

有谁知道应该使用什么功能以及如何修改上面的内容?

2 个答案:

答案 0 :(得分:3)

一种简单的方法是使用plt.pause(1)。更复杂的方法是使用matplotlib.animate模块。见pylab.ion() in python 2, matplotlib 1.1.1 and updating of the plot while the program runs

exampleapitutorial

答案 1 :(得分:0)

import time
import pylab as pl
import numpy as np

pl.ion()
x = np.arange(-np.pi, np.pi, 0.1)         # only for the example purpose
myDict = {"sin":np.sin, "cos":np.cos, "exp":np.exp}
for key in myDict:
    print myDict[key]
    pl.clf()
    y = myDict[key](x)
    pl.plt.plot(x, y, label=key)
    pl.plt.draw()
    time.sleep(1)