我正在尝试实现一个以实时方式绘制数据的应用程序。我已经尝试了一些我在this question中找到的代码,但它不起作用。该图在for
循环之前绘制了一个结果,在for
循环完成时绘制了一个结果
这是在Python解释器的Ubuntu中运行的。
我所指的代码:
import numpy as np
import matplotlib.pyplot as plt
plt.ion()
mu, sigma = 100, 15
fig = plt.figure()
x = mu + sigma*np.random.randn(10000)
n, bins, patches = plt.hist(x, 50, normed=1, facecolor='green', alpha=0.75)
for i in range(50):
x = mu + sigma*np.random.randn(10000)
n, bins = np.histogram(x, bins, normed=True)
for rect,h in zip(patches,n):
rect.set_height(h)
fig.canvas.draw()
答案 0 :(得分:0)
问题出现是因为后端。我有Qt4Agg
并将其更改为TkAgg
之后就有效了......不知道为什么Qt4Agg不值得...
更改后端我必须编辑/ etc / matplotlibrc文件
编辑:
找到有关Qt4Agg的信息,而不是调用draw()
,只要调用pause(0.001)
,就应暂停该信息,此处暂停1ms。
关于此
的信息