首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >后端对savefig重要吗?

后端对savefig重要吗?
EN

Stack Overflow用户
提问于 2019-12-07 09:20:49
回答 1查看 100关注 0票数 0

我有一个脚本,它绘制一些熊猫数据,然后使用plt.show()交互地显示绘图,或者使用plt.savefig(args.out)将其保存到文件中。

代码语言:javascript
复制
import matplotlib.pyplot as plt

# set up the dataframe here

ax = df.plot.line(x=0, title=args.title, figsize=(12,8), grid=True, **kwargs)

if (args.out):
    vprint("Saving figure to ", args.out, "...")
    plt.savefig(args.out)
else:
    vprint("Showing interactive plot...")
    plt.show()

问题是,默认的matplotlib后端对于我用savefig保存到文件的场景很重要吗?这在另一种情况下肯定很重要,因为它用于显示交互式绘图,但如果我调用savefig,是否完全使用了另一个后端?

EN

回答 1

Stack Overflow用户

发布于 2019-12-07 09:51:45

在显示图形时,后端显然很重要,因为它提供了两件事:

  • 绘制图像的渲染器
  • 在其中显示图像的图形用户界面。

在保存图形时,只有前者很重要。但是,matplotlib提供了多种导出格式。最后,选择的后端将确定保存图形时要执行的操作,并且在大多数情况下,将使用现有的非交互式后端之一来生成输出文件。

下面是一些例子:

TkAgg将使用tkinter GUI来显示图形。为了保存png图形,它将回退到基本的Agg后端来生成png文件。对于保存svg文件,它将回退到svg后端,对于保存pdf,它将回退到pdf后端,等等。

TkCairo,将使用tkinter GUI来显示图形。为了保存png图形,它将回退到基本的Cairo后端来生成png文件。对于其余部分,同上。

Qt5Agg将使用PyQt图形用户界面显示图形。对于png,将回退到Agg。对于其他人,同上。

其他后端也是类似的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59222218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档