保存交互式Matplotlib图形
有没有一种方法可以保存Matplotlib图形,以便可以重新打开它并恢复典型的交互作用?(就像MATLAB中的.fig格式一样?)
我发现自己多次运行相同的脚本来生成这些交互式图形。或者我要向同事发送多个静态PNG文件,以显示绘图的不同方面。我宁愿发送图形对象,并让它们自己与之交互。
-
这将是一个很棒的功能,但是AFAIK并未在Matplotlib中实现,并且由于存储数据的方式可能很难实现自己。我建议(a)将数据处理与生成图形分开(以唯一的名称保存数据),然后编写图形生成脚本(加载已保存数据的指定文件)并根据需要进行编辑或(b )另存为PDF /
SVG /
PostScript格式,然后在某些精美的图形编辑器(如Adobe
Illustrator(或Inkscape))中进行编辑。编辑后,2012年秋季
:正如其他人在下面指出的(尽管在此提及,因为这是公认的答案),自1.2版以来,Matplotlib允许您腌制人物。如发行说明所述,它是一项实验性功能,不支持在一个matplotlib版本中保存图形并在另一个版本中打开图形。从不可靠的来源恢复泡菜通常也是不安全的。对于共享/以后的编辑图(需要首先进行大量数据处理并且可能需要在几个月后进行调整,例如在发表科学论文的同行评审中进行调整),我仍然建议(1)的工作流程具有数据处理脚本,该脚本在生成图之前将处理后的数据(放入绘图中)保存到文件中,并且(2)具有单独的绘图生成脚本(您可以根据需要进行调整)以重新创建绘图。通过这种方式,您可以为每个绘图快速运行脚本并重新生成脚本(并使用新数据快速复制绘图设置)。话虽如此,腌制一个数字可能会方便短期/交互式/探索性数据分析。