Matplotlib 保存文件稍后将在 ipython 中重新编辑
Matplotlib save file to be reedited later in ipython
有没有办法保存 matplotlib 图的 'state' 以便我以后可以打开图并与之交互,例如在新的 ipython 笔记本会话中。
如果您想稍后编辑图形,绘制 pdf 和其他文件格式并不完全正确。
如果您想稍后对图形进行注释或重新缩放,这将很有用,但您不一定拥有对生成该图形的原始 script/data 的所有访问权限。
在 matlab 中,据报道 ipython 经常尝试以多种方式进行模拟,您可以简单地将文件保存为 .fig
甚至脚本,例如 .m
( matlab)文件!然后在以后的 matlab 会话中重新打开 .m
或 .fig
并对其进行编辑。
这可以用 matplotlib 完成吗?
你可以像这样将图形 pickle 到磁盘
import matplotlib.pyplot as plt
import numpy as np
import pickle
# Plot
fig_object = plt.figure()
x = np.linspace(0,3*np.pi)
y = np.sin(x)
plt.plot(x,y)
# Save to disk
pickle.dump(fig_object,file('sinus.pickle','w'))
然后从磁盘加载并显示:
fig_object = pickle.load(open('sinus.pickle','rb'))
fig_object.show()
有没有办法保存 matplotlib 图的 'state' 以便我以后可以打开图并与之交互,例如在新的 ipython 笔记本会话中。
如果您想稍后编辑图形,绘制 pdf 和其他文件格式并不完全正确。
如果您想稍后对图形进行注释或重新缩放,这将很有用,但您不一定拥有对生成该图形的原始 script/data 的所有访问权限。
在 matlab 中,据报道 ipython 经常尝试以多种方式进行模拟,您可以简单地将文件保存为 .fig
甚至脚本,例如 .m
( matlab)文件!然后在以后的 matlab 会话中重新打开 .m
或 .fig
并对其进行编辑。
这可以用 matplotlib 完成吗?
你可以像这样将图形 pickle 到磁盘
import matplotlib.pyplot as plt
import numpy as np
import pickle
# Plot
fig_object = plt.figure()
x = np.linspace(0,3*np.pi)
y = np.sin(x)
plt.plot(x,y)
# Save to disk
pickle.dump(fig_object,file('sinus.pickle','w'))
然后从磁盘加载并显示:
fig_object = pickle.load(open('sinus.pickle','rb'))
fig_object.show()