Переполнение памяти при сохранении графиков Matplotlib в цикле

Я использую итеративный цикл для построения данных с использованием Matplotlib. Когда код сохранил около 768 графиков, он выдает следующее исключение.

RuntimeError: Could not allocate memory for image 

Мой компьютер имеет около 3,5 ГБ оперативной памяти. Есть ли способ освободить память параллельно, чтобы память не исчерпалась?

Помните ли вы, что вы close свои фигуры, когда закончите с ними? например:

 import matplotlib.pyplot as plt #generate figure here #... plt.close(fig) #release resources associated with fig 

В качестве немного другого ответа помните, что вы можете повторно использовать цифры. Что-то вроде:

 fig = plt.figure() ax = plt.gca() im = ax.imshow(data_list[0],...) for new_data in data_list: im.set_cdata(new_data) fig.savefig(..) 

Который заставит ваш код работать намного быстрее, так как ему не нужно будет устанавливать и сбрасывать цифру более 700 раз.