【发布时间】:2021-04-26 19:08:41
【问题描述】:
我有一个 Python 程序,它从测量仪器获取数据并使用 matplotlib 绘制数据(我在 Debian Linux 上)。绘图是在一个单独的线程中完成的,它以固定的时间间隔更新数据图。每次更新时,从图中删除现有线条,然后使用新数据重新创建线条(是的,可能有更有效的方法,但不可能只将新数据添加到我的现有线条中情况)。
一段时间后,程序会占用大量内存(千兆字节)。如果我修改代码以跳过绘图/matplotlib 部分,则不会发生这种情况,因此大量内存的使用显然与 matplotlib 有关。如果我通过运行另一个会消耗大量内存的应用程序给系统施加压力,我的 Python 程序将在某个时候开始释放 matplotlib 使用的过多内存(最终大约 50 MB 左右),释放内存似乎对我的程序运行没有任何负面影响。这告诉我,matplotlib 使用的大量内存在我的应用程序中并不重要(如果不是无用的话)。
如何避免 matplotlib 占用这么多内存?
【问题讨论】:
-
我通过添加一个显示效果的代码示例来编辑我的问题,但由于某种原因它没有显示出来。啊啊!
标签: python python-3.x matplotlib memory