我如何在while循环中实时绘图?

17 浏览
0 Comments

我如何在while循环中实时绘图?

我正在尝试使用OpenCV实时绘制来自摄像头的数据。然而,实时绘制(使用matplotlib)似乎不起作用。

我将问题简化为以下示例:

fig = plt.figure()
plt.axis([0, 1000, 0, 1])
i = 0
x = list()
y = list()
while i < 1000:
    temp_y = np.random.random()
    x.append(i)
    y.append(temp_y)
    plt.scatter(i, temp_y)
    i += 1
    plt.show()

我期望这个示例逐个绘制1000个点。实际上发生的是,窗口弹出并显示第一个点(没问题),然后等待循环完成后才绘制出剩余的图形。

你有什么想法,为什么我没有看到逐个绘制点呢?

0