停止在 spyder 中显示绘图

Stop showing plots in spyder

我有很多情节的剧本。我直接用 plt.savefig() 而不是 plt.show() 保存它们,所以我不必关闭所有 windows。在 spyder 中,如果我使用内联,它们都会显示在控制台中(这意味着我必须向后滚动才能看到其他输出),如果我使用自动,它们都会显示在单独的 windows 中。我希望他们根本不出现,因为我从来没有打电话给 plt.show()。我该怎么做?

nb:建议的答案都有效!谢谢!我选择 plt.ioff() 作为正确答案,因为我可以选择对某些脚本而不是其他脚本执行此操作。

试试这个(假设将 pyplot 导入为 plt),在代码的开头某处:

plt.ioff()

也许您想完全关闭 spyder 对 matplotlib 的支持,

Preferences | IPython Consonle | Graphics | Support for Graphics

并取消勾选 Activate

万一有人还在为这个问题苦苦挣扎,我认为在 plt.savefig() 之后添加一个 plt.close() 就可以了。 (我将 Spyder 5.1.5 与 Python 3.8.12 一起使用)