类似的问题,有人问栈here和here显示之后,但我不太满意,因为它仍然没有解决我的问题。保存图片为pdf在python笔记本
考虑我有一个函数,做一些计算和显示的图(不返回数字对象)。出于个人偏好(并且保持跟踪我的情节看起来像没有保存每个)我在IPython中使用%matplotlib inline
。现在我生成了一些图,我决定保存其中的一个(比如显示在笔记本中的第三个),右键点击并选择另存为...,但只能作为.png工作。
有没有办法将其保存为.PDF文件,而无需修改返回一个数字对象的功能? (我知道这根本不难,但对于我的大多数情况来说,这仅仅是没有必要的,因为它最终只有20个数字值得保存)。
我发现后端正在%matplotlib inline
之后被改变,这是(我猜)我无法将数字保存为.pdf的原因。解决方法似乎使用%config InlineBackend.close_figures = False
并使用plt.savefig(...)
(答案来自here)。但这样我可以只保存最后一个数字,并且每次都必须手动关闭数字。
如果我的问题,从坏的程序流程/编程风格的话,我会很乐意接受如何去做更好的建议。如果需要代码示例,我可以提供一个。 我使用:
ipython (2.1.0)
matplotlib (1.4.1) (with Qt4Agg backend if not inline)
Python 2.7.6
MacOSX 10.9.4
总之,没有,没有办法做你想做的。浏览器中的笔记本界面并不知道该图像已连接到特定的matplotlib图形对象,因此它只能为您提供png来保存。有一个配置开关可以使用SVG来显示,而不是PDF。 – 2014-10-22 22:39:54
我不知道这个选项,谢谢!对我来说,这实际上已经足够了(我正在使用Latex进行写作,对于.svg也是如此)。如果您将此作为答案而不是评论发布,我可以接受它 – 2014-10-24 10:03:57