python - Matplotlib 更新时图形闪烁
问题描述
我在 PyQt 窗口中有一个图,每 10 秒更新一次。问题是每次更新图中的数据都会出现闪烁,非常烦人。有没有办法解决这个问题?请参阅我用来绘制情节的代码:
def _plot(self):
self.fig.clear()
chart1 = self.fig.add_subplot(2,1,1)
chart2 = self.fig.add_subplot(2,1,2)
chart1.grid(True)
chart2.grid(True)
chart1.plot(h_headers,reference)
for row in rows:
curve = []
gap_curve = []
for v in range(len(h_headers)-1):
curve.append(#SOME NUMBERS#)
chart1.plot(h_headers, curve)
chart2.plot(h_headers, gap_curve)
self.fig.patch.set_visible(False)
self.canvas.draw()
要调用 _plot 方法,我使用线程:
loop = True
class DataStream(threading.Thread):
def __init__(self,queue):
threading.Thread.__init__(self)
self.queue = queue
def run(self):
while loop:
window.update_numbers()
window._plot()
window.pyqttable.viewport().update()
time.sleep(5)
难道我做错了什么?Matplotlib 这里是个菜鸟,谢谢!
解决方案
万一有人和我有同样的问题,我只是改变了
self.canvas.draw()
至
self.canvas.draw_idle()
推荐阅读
- amazon-web-services - AWS Cloudwatch 洞察查询上的 Stat 操作以从 JSON 数组中获取字段值
- javascript - 提交时清除 React 中的表单字段
- r - 在 R 中使用比较运算符强制命名(dplyr、rlang、tidy)
- reactjs - React Calculator:多点问题和方程问题
- c# - 使用 Xamarin Forms App(C#、Android 模拟器)连接到 AWS RDS MySQL 数据库时出现问题
- java - 如何在 Java 中使用 Unicode 字符填充字符串
- sql - Postgresql 行到 json 作为值数组(没有键)
- kentico - A 标签内的 Divs 和 H 标签
- python - Python:在 linux 终端中获取最后一个命令行
- arrays - 如何从嵌套数组响应正文中的一个 API 中获取变量?