我正在编写一个脚本,从数据中生成许多绘图,每个绘图首先用plt.savefig()
保存,然后用plt.show()
显示。
在第一阶段,我希望所有的绘图显示和脚本停止为每个绘图,以允许调整例如轴的限制,比例,标签。你知道吗
在第二阶段,当我在LaTex中包含这些绘图并完成布局时,我希望所有绘图都只保存到pdf中,而不会在重新执行脚本进行最终编辑时弹出。你知道吗
有没有一个简单的命令可以放在我的脚本前面,禁用plt.show()
,这样脚本就可以在第二阶段的后台运行?你知道吗
我知道我可以使用plt.ion()
使plt.show()
无阻塞,但这会不断弹出窗口,从我的latex编辑器窗口(我在Ubuntu上)夺走我的注意力。你知道吗
你问的问题不太对,但要理解答案,你需要了解一点
matplotlib
的体系结构。有一个pyplot
是一个基于状态机的层,它被构建来与ipython一起工作,以模拟类似MATLAB
的体验。这是建立在OO
接口之上的(您真的应该将其用于脚本,而不是pyplot
,但我离题了)。OO
层知道如何绘制canvas
和如何转换数据->;抽象漂亮的线条。canvas
是由多种后端之一提供的,它们知道如何将抽象的漂亮线条转换为实际的漂亮线条。默认情况下,您可能正在使用GTKAgg
后端或TKAgg
后端,它们为嵌入gui的画布画线,并且都是交互式后端。你知道吗您只需要第二次使用非交互式后端即可。你知道吗
在脚本中包括:
在导入
pyplot
之前,在需要交互式图形时对该行进行注释。你知道吗相关问题 更多 >
编程相关推荐