2017-05-16 100 views
0

有谁知道为什么内存使用不断增加?一个理想化的案例在下面,我看不出为什么。Matplotlib内存绘制循环

from mpl_toolkits.basemap import Basemap 
import matplotlib.pyplot as plt 
import numpy as np 


Lon = np.linspace(-180,180,1440) 
Lat = np.linspace(-90,90,721) 
Lon,Lat = np.meshgrid(Lon,Lat) 


m = Basemap() 
X, Y = m(Lon, Lat) 
matrix = np.random.rand(721,1440) 

for i in range(0,100): 

    cs = m.contourf(X,Y,matrix) 
    plt.clf() 
    plt.close() 
    print i 
+0

你是否假设内存需求正在由于循环而累积?因为如果是这样,那可能不是错误。 'cs = m.contourf(X,Y,矩阵)'自己正在增加我笔记本电脑上的内存需求,直到我因为担心死机而杀死了这个进程。 – roganjosh

+0

但问题是为什么会继续增加RAM的使用?第一次迭代使用相当数量的内存,重点是它在每次迭代后都会持续上升 –

回答

0

可能是内存泄漏 - 无法复制最新Matplotlib库的问题。