【问题标题】:Matplotlib close plot/figure automatically after viewing [duplicate]Matplotlib在查看后自动关闭绘图/图形[重复]
【发布时间】:2019-08-03 19:24:50
【问题描述】:

所以我遇到了一个小问题,但是是的,我需要一个答案。 A 用 matplotlib 创建了一个图,显示后我想关闭它。 当然,我访问了一些文档(例如:https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.close.html),很多论坛,例如:matplotlib close does not close the window,但我的代码对我不起作用。

我使用了plt.ion() 函数,但是当我尝试它时,情节没有出现,我只是看到一个空窗口。 之后,我使用了plt.show(block = False),我又得到了一个空窗口。

可以看上面的代码:

#Showing

plt.ion()
plt.show(block = False)

time.sleep(10)

plt.close("all")

如您所见,有一个延迟,我想看一个情节十秒钟,然后关闭它。

请随意给我评论,我很感激,谢谢。

【问题讨论】:

    标签: python python-3.x matplotlib


    【解决方案1】:

    不要使用time.sleep()。使用plt.pause() 函数。


    详情/说明首先,你需要plt.show(block=False),这样情节才不会被阻塞,代码执行下一条命令。

    第二个,第二个命令,即plt.pause(3),将绘图暂停3秒,然后转到下一行/命令。

    最后,最后一行/命令,plt.close("all") 自动关闭绘图。


    这是一个脚本 (.py),它绘制 imshow 并在 3 秒后自动关闭它。

    import matplotlib.pyplot as plt
    import numpy as np
    
    X = np.random.rand(10,10)
    
    plt.imshow(X)
    
    plt.show(block=False)
    plt.pause(3) # 3 seconds, I use 1 usually
    plt.close("all")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-05
      • 2016-03-10
      • 1970-01-01
      • 2017-09-25
      • 2021-10-30
      相关资源
      最近更新 更多