JOJO SHEN 2021-08-17 20:18 采纳率: 0%
浏览 2412

请教:python用matplotlib循环取用数据画图内存不够提示Fail to allocate bitmap

代码就是简单重复取用列表来画图,但是我的8G内存电脑画到369张图的时候就中断报错了。
img
代码是这样子的:

for i in range(1000):
    a = [1,3,5]
    b =[2,4,7]
    c=[5,1,3]
    d=[7,2,4]
    plt.cla()
    plt.plot(a, b, c='red' , label='ab')
    plt.plot(c, b, c = 'black',label='bb')
    plt.plot(c, d, c = 'blue',label='cd')
    plt.tight_layout()
    plt.savefig(os.getcwd() + '\\SAVE\\' + str(i) + '.png',dpi=20)
    plt.figure(clear=True)
    plt.clf()
    plt.close()


尝试了好多方法,plt.cla()、plt.clf()、plt.figure(clear=True)、plt.close()、gc.collect()这些方法都没有用。
求指点。

  • 写回答

3条回答 默认 最新

报告相同问题?

问题事件

  • 创建了问题 8月17日