Python-Matplotlib自动增量保存图形选项

时间:2018-12-06 20:46:38

标签: python matplotlib save

我有一个愚蠢的-但很烦人-matplotlib问题。我不断生成图形,并使用matplotlib弹出图形显示屏上的保存按钮将其保存到磁盘。该窗口的默认行为,用于自动增加要保存文件的默认名称的索引,例如如果已经保存了119个其他图形,则可以选择保存“ Figure_120.png”。

但是最新版本的matplotlib默认情况下不会执行此操作,因此每次执行此操作时我都必须编辑和重命名图形。难道我做错了什么? matplotlib如何始终读取默认输出目录的内容以了解如何为默认值编制索引?

enter image description here

2 个答案:

答案 0 :(得分:0)

您可以将Figure保存在目录中。  目录将以当前日期和数字重命名,并带有当前时间。  对应的代码:

import os.path
import os, errno

cur_Date = time.strftime("%Y-%m-%d")
cur_Time = time.strftime("%H-%M")
%create directory if it did not exist
try:
    os.makedirs(cur_Date)
except OSError as e:
    if e.errno != errno.EEXIST:
        raise
   # your figure creation lines ....
   # save the figure to file
   fig.savefig(cur_Time+'.png')  

答案 1 :(得分:0)

因此,托马斯·库恩(Thomas Kuhn)的建议有点不客气-但它的确有效:当您单击保存框时,它将把图形保存为标题。我添加了一个随机数,这是完整的解决方案:

figure = plt.figure()
figure.canvas.set_window_title("Fig_"+str(np.random.randint(1E8)))