我基本上试着在每个图形上创建一个可配置的数字和一个可配置的子图数。然后大约每分钟检索一次数据并更新这些图表。
如果我这样做了,plot.show()就会显示出来,在执行任何其他代码行之前,似乎都要等待这些数字接近。所以我不能让它等一下再重新设计。
如果我使用fig.show(),它的出现和关闭太快了。
因此,我对如何正确地处理这个问题感到困惑,因为我有一个地块保持一分钟左右的开放状态(也想配置),然后更新。它需要对一个可配置的数字和子图进行处理。
我一直在用pyplot来工作,并且一直试图定义一个二维的行对象数组。但我认为我这样做是错误的,因为我真正想做的就是每分钟重新绘制数据。
以下是我所做工作的更多细节:
1)我的zip文件中填充了实时更新的xml数据(每分钟将xml数据添加到当天的zip文件中一次),我希望找到某些xml数据,并且只向sqlite 3写入新数据),在sqlite中查找数据并绘制一个图表。4)数字的数量需要配置(目前为1或2个,但将来可能更多),每个数字上的子图数目也应是可配置的。5)实时查找新数据并重新绘制或动画化。
1-4是完全完成的,我可以在指定的时间内绘制数据.只是不重画而已。
希望这是有意义的。提前谢谢。
发布于 2016-06-07 02:55:17
您的设计陷入困境,因为您试图在一个线程中执行两个任务:显示一个GUI,并更新它的背景数据。python中的GUI需要整个线程来运行,这就是程序停止的原因,或者在调用此函数时“阻止”继续运行的原因。您需要做的是使用matplotlib的"non-blocking“特性来允许您的程序更新。This similar Stack Overflow question提供了几个答案,解释了如何使用非阻塞图的概念。
https://stackoverflow.com/questions/37669484
复制相似问题