我一直试图从熊猫数据框中获取更新的图,但没有成功。我的问题:没有出现情节窗口(它没有隐藏 - 我很确定)。
我已经尝试从stackoverflow重建和更改不同的解决方案。我最近的尝试基于this post。纯文本,粘贴确实有效,所以问题需要在我的修改中。
我将其更改为此,因为我想每秒自动更新它。
import serial as s
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
from time import sleep
data = pd.DataFrame(np.random.random((10,10))) # I want to use pandas because
# of easier timestamp handling
fig, ax = plt.subplots()
ax.set(title='title')
im = ax.imshow(data)
while True:
im.set_data(np.random.random((10,10)))
print "hello" #just to see if sth happens
fig.canvas.draw()
sleep(1)
plt.show()
只是为了解释:后来我想从串口读取数据并将它们提供给绘图以使我的数据可视化。
那么,你期望的是:提供的代码每秒打印你好,但没有给我看任何情节。有任何想法吗?我不在他们身边。
顺便说一句:我很惊讶,没有"轻松,直接的"找到这种问题的解决方案。我可以想象,有些人正在尝试更新情节?!
答案 0 :(得分:1)
you can use the package drawnow
from pylab import * # import matplotlib before drawnow
from drawnow import drawnow, figure
from time import sleep
import numpy as np
def draw_fig_real():
imshow(data, interpolation='nearest')
data = np.random.random((10,10))
figure()
for i in range(10):
data = np.random.random((10,10))
sleep(0.5)
drawnow(draw_fig_real)
Hope this helps