我使用如下循环将许多图写入 pdf。它有效,但有两个非常烦人的问题,
1)当循环运行时,我看到很多窗口('图 1')弹出。我认为该命令plt.close(fig)
无法按预期工作。这真的很烦人,因为当它运行时我可能正在做其他事情,而这些弹出窗口挡住了我对其他任务的看法。
2)可能与1)有关,内存使用量急剧上升。在我的真实脚本中,绘制 50 页图表会消耗 > 32 Gb 的内存。怎么可能?!
with PdfPages('Manyplots.pdf') as pdf:
for j in xrange(100):
fig = plt.figure(1, figsize=(5,5))
for fr in xrange(9):
pp = fig.add_subplot(3,3,fr+1)
pp.imshow(x, cmap=plt.cm.gray)
pdf.savefig()
plt.close(fig)
我的问题是
1)情节完成后有什么方法可以关闭图形?
2)更好的是,如何抑制空白图形弹出,因为它确实应该在后台写入外部文件,
3) 有没有更好的方法将一系列绘图保存到 PDF 的多页?