自动保存IPython Notebook中的图表

3

我希望能将ipython笔记本中生成的所有图形保存为不同的分辨率。我知道我可以在每个显示图形的单元格中添加以下代码:

plt.savefig('figure_1.pdf', dpi=300)

但这需要在需要时手动添加。
有没有(相对)简单的方法告诉IPython保存每个图形?也许可以使用类似figure_X.pdf的文件名模板,其中X是单元格的编号?
谢谢。

1
https://medium.com/analytics-vidhya/export-images-from-jupyter-notebook-with-a-single-command-422db2b66e92 可以自动从Jupyter笔记本的JSON中提取base64编码的图像。 - HappyFace
1个回答

3

是的,只需动态创建一个变量作为你想要的输出名称。

outPDF = 'figure_{}.pdf'.format(cellNumber)
plt.savefig(outPDF, dpi=300)

因此,例如,如果 cellNumber = 5outPDF = 'figure_5.pdf'

太棒了,谢谢!有没有办法可以自动化这个过程?这样每个带有绘图的单元格都会自动调用savefig函数? - mgalardini
我不太确定你的意思; 这应该只是放入您正在生成/显示图形的其他Python代码中,对吧? - Erica
4
是的,我想找到一种方法,不必在每个显示图表的单元格中编写这两行内容。类似于魔术函数的东西可能会有用... - mgalardini

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接