Python matplotlib最大打开警告数据过载

Python matplotlib最大打开警告数据过载,python,matplotlib,Python,Matplotlib,所以我得到了这段代码,我必须使用2000个绘图,并将它们相互叠加。 我是这样做的: fig = plt.figure(figsize=(15, 8)) N=45 ind=np.arange(N) for bar in range(0,2000,): y=[dic[value][bar] for value in dic] plt.bar(ind,y,bottom=lista[0]) plt.close(fig) 然后我得到一个警告: 运行时警告:已打开20多个数字。创

所以我得到了这段代码,我必须使用2000个绘图,并将它们相互叠加。 我是这样做的:

fig = plt.figure(figsize=(15, 8)) 
N=45
ind=np.arange(N)
for bar in range(0,2000,):
    y=[dic[value][bar] for value in dic]
    plt.bar(ind,y,bottom=lista[0])
    plt.close(fig)
然后我得到一个警告:

运行时警告:已打开20多个数字。创造的数字 通过pyplot接口(matplotlib.pyplot.figure)保留 直到显式关闭,可能会消耗太多内存。(控制 有关此警告,请参见rcParam图。max_num_图)。 最大\u打开\u警告,运行时警告)


脚本将永远运行。有没有办法解决这个问题?

你在哪里定义
fig
?@StefanS我现在补充道。虽然怀疑它与此无关,
plt.close(fig)
没有太大作用,因为您只在第一次循环迭代中关闭
fig
-图。由于从第二次迭代开始,您不再有活动的图形,
plt.bar
创建一个新图形,您永远不会关闭它。虽然我不明白为什么你认为你有2000个情节,你在哪里“堆叠”它们。您是否希望在一个图形中包含N根钢筋,但每个钢筋由2000根堆叠钢筋组成?这将是一个绘图,因此定义一个轴,并在循环中使用
ax.bar
进行绘图。当然,不要在循环中关闭图形。是的,我希望在一个图形中有N个条,但每个条由2000个堆叠条组成