返回

python-Matplotlib Imshow 不随 Draw 更新

发布时间:2022-06-02 01:32:17 267
# node.js

我无法使用新数据更新imshow。作为参考,我正在从串行端口提取数据,并尝试绘制它,每隔一秒钟左右更新一次。我一直在用线程积累数据,所以我最初认为这可能是问题所在,因为matplotlib不是线程安全的。但是,我无法使用以下更简单的示例:

    import numpy as np
    import matplotlib.pyplot as plt 
    import time
    dat = np.random.rand(100,10)
    plt.ion()
    fig = plt.figure()
    ax = fig.add_subplot(111)
    image = ax.imshow(np.zeros((10,10)))
    fig.canvas.draw()
    count = 0
    while count < 100:
        image.set_data(dat[count:count+10])
        fig.canvas.draw()
        count += 10
        time.sleep(1)

使用TkAgg,我只得到全零的绘图,它从不更新,然后退出。使用Qt5Agg,退出前会弹出一个空窗口。

我尝试了draw\u idle()、flush\u events()和plt的各种组合。显示(block=False),结果相同。

python 3.8.10、matplotlib 3.2.2

特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(1)
按点赞数排序
用户头像