【发布时间】:2016-07-26 17:10:57
【问题描述】:
我在字典中保存了一组对数字的引用,以便以后可以根据需要保存它们。如果调用show() 命令并先查看它们,我很担心保存的数字是空白的。由于show() 命令阻塞并且我没有使用类似spyder 的解释器,因此我必须在到达savefig() 之前关闭这些数字
figures['myfig_1'] = figure()
...
figures['myfig_n'] = figure()
...
#show() #disabling this makes the problem go away
print "Saving:"
for fig in figures:
figure(figures[fig].number)
savefig(fig)
print "Figure " + str(figures[fig].number) + ": " + fig
这里的打印语句告诉我字典仍然完好无损,我认为这意味着我没有丢失数字引用(它们仍在其.number 属性中返回有意义的数字。)
我注意到的另一个转折是,当我在一个类中做了类似的事情,将字典存储为成员并将存储和保存函数划分为它们自己的方法时,这种情况不会发生。我关闭数据或存储数据的方式是否导致数据丢失?
【问题讨论】:
-
我想出了一个答案,但我在 8 小时内无法添加它。老鼠...简短的版本是我现在将渲染后端更改为“TkAgg”,直到我能弄清楚如何让 Qt4Agg 以我想要的方式运行。
标签: python matplotlib