内存满Python打印3d

2024-04-26 12:00:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我在循环中绘制图像时遇到了一些内存问题。如何删除旧的?在

错误:

Traceback (most recent call last):
  File "C:\Users\Alex\Dropbox\code stuff\solarsystem.py", line 69, in <module>
    fig = plt.figure()
  File "C:\Python27\lib\site-packages\matplotlib\pyplot.py", line 343, in figure
    **kwargs)
  File "C:\Python27\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 79, in new_figure_manager
    return new_figure_manager_given_figure(num, figure)
  File "C:\Python27\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 106, in new_figure_manager_given_figure
    canvas = FigureCanvasTkAgg(figure, master=window)
  File "C:\Python27\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 225, in __init__
    master=self._tkcanvas, width=w, height=h)
  File "C:\Python27\lib\lib-tk\Tkinter.py", line 3306, in __init__
    Image.__init__(self, 'photo', name, cnf, master, **kw)
  File "C:\Python27\lib\lib-tk\Tkinter.py", line 3262, in __init__
    self.tk.call(('image', 'create', imgtype, name,) + options)
TclError: not enough free memory for image buffer

脚本:

^{pr2}$

Tags: inpybackendnewmatplotlibinitlibpackages
2条回答

如果要生成大量图片,则不仅需要调用

plt.clf()

图形之间的函数

^{pr2}$

图片之间的功能(即after the for j in range(0,len(bodies[0][2])-1,10): 循环完成)

可以使用删除fig实例(完成后)

del fig

您可以使用os.unlink删除文件

^{pr2}$

相关问题 更多 >