【发布时间】:2016-03-26 09:42:33
【问题描述】:
我很难设置我的代码来创建实时动画图,我的代码在收集数据后绘制图形,而不是显示每次迭代。我的脚本运行一个回归函数,然后存储在一个文件中,然后我访问这些文件并绘制它们,这就是我所拥有的,我需要移动或更改什么来让它实时绘制?我尝试在 for 循环内移动绘图函数,但没有奏效,有什么建议吗?
fig = plt.figure()
ax1 = fig.add_subplot(1,1,1)
num = 10
for idx in range(1,num):
c,e = Regr_magic()
with open("CK_output.txt",'a') as CK:
CK.write("{0},{1}\n".format(idx,c))
with open("error_output.txt",'a') as E:
E.write("{0},{1}\n".format(idx,e))
def animate(i):
pull = open('error_output.txt','r').read()
data = pull.split('\n')
xar = []
yar = []
for each in data:
if len(each)>1:
x,y = each.split(',')
xar.append(float(x))
yar.append(float(y))
ax1.plot(xar, yar)
ani = animation.FuncAnimation(fig, animate, interval=1000)
plt.show()
仅供参考,数据文件包含以下内容,迭代次数和 Ck 值或错误,所以它们看起来像这样
1,.0554
2,.0422
3,.0553
4,.0742
5,.0232
【问题讨论】:
标签: python matplotlib code-organization