我有一个包含数据的字典。对于每个条目,我想显示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()
有谁知道应该使用什么功能以及如何修改上面的内容?
答案 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
答案 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)