交互调整后保存图参数



我经常发现自己使用matplotlib快速显示数据,然后返回并调整我的绘图代码以制作漂亮的数字。在此过程中,我经常使用交互式绘图窗口来调整诸如间距,缩放,裁剪等的内容。虽然我可以轻松地将生成的图形保存到图像文件中,但我真正想要的是保存函数呼叫/参数的序列产生了它。

请注意,我不在乎再次打开同一图(如保存交互式matplotlib数字)。即使是能够打印图形和轴各种属性的简单的东西也很有用。

虽然我没有您的特定问题的答案,但我通常建议使用ipython笔记本(以及更多!)

确保您在一个单元格中有%pylab inline

绘制时,它将在笔记本本身中显示。然后在您的单元格中,只需继续进行实验,直到正确使用(在单元格中使用Ctrl-Enter)。现在,该单元将拥有您需要的所有语句(不再是!)

命令行解释器和笔记本之间的区别是,您键入的前所有语句都会导致很多混乱。使用笔记本,您可以编辑到位。

这里一个类似的问题有一个我刚刚在这里发布的答案。

要点:使用matplotlib的挑选图对象将图对象保存到文件中。有关完整的示例,请参见上述答案。这是一个缩短的例子:

fig, ax = matplotlib.pyplot.subplots()
# plot some stuff
import pickle
pickle.dump(  fig,  open('SaveToFile.pickle',  'wb')  )

这确实节省了所有绘图调整,即使是GUI子图制作的调整也是如此。通过pickle.load()取消挑选仍然可以使您通过CLI或GUI进行交互。

最新更新