2026a
# 无界面模式
图形库无界面模式允许在不显示图形窗口的情况下使用 TyPlot 库绘图,适用于服务器环境、自动化脚本或没有 PyQt 的系统。
# 无界面模式设置方法
在加载 TyPlot 库之前,需要设置环境变量 TYPLOT_BACKEND 的值为 "Agg"。
# 方式一:在 Julia 会话中设置
# 在 using TyPlot 之前设置环境变量
ENV["TYPLOT_BACKEND"] = "Agg"
using TyPlot
# 方式二:在操作系统中设置
Windows:通过系统属性或设置面板添加环境变量 TYPLOT_BACKEND,值为 Agg,然后重启 Syslab。
Linux:在终端中直接使用 export TYPLOT_BACKEND=Agg 命令设置,设置后再启动 Syslab。
# 验证设置是否生效
# 检查环境变量是否设置正确
println("TYPLOT_BACKEND = ", get(ENV, "TYPLOT_BACKEND", "未设置"))
# 退出无界面模式方法
退出无界面模式的方法取决于无界面模式的设置方式,请参考对应的设置方法:
# 方式一:在 Julia 会话中设置
如果在 Julia 会话中使用 ENV["TYPLOT_BACKEND"] = "Agg" 设置的临时环境变量:
删除环境变量:删除 Julia 会话中的
ENV["TYPLOT_BACKEND"] = "Agg"重启 Julia 终端:关闭 Julia 终端并重新启动,using TyPlot 时默认使用有界面模式。
# 方式二:在操作系统中设置
Windows:通过系统属性或设置面板删除 TYPLOT_BACKEND 环境变量,然后重启 Syslab。
Linux:使用 unset TYPLOT_BACKEND 命令删除环境变量,然后重启 Syslab。
# 验证退出是否成功
# 检查环境变量是否已清除
println("TYPLOT_BACKEND = ", get(ENV, "TYPLOT_BACKEND", "未设置"))
# 如果显示 "未设置" 或非 "Agg" 值,表示已退出无界面模式
# 示例
# 无界面模式使用示例
# 设置无界面模式
ENV["TYPLOT_BACKEND"] = "Agg"
using TyPlot
# 创建图形并绘图(不会显示窗口)
f = figure()
plot(1:10)
title("无界面模式示例")
# 保存图形为图片
saveas(f, "figure.png")
# 保存为 syslabfig 格式
savefig(f, "figure.syslabfig")
# 批量处理示例
ENV["TYPLOT_BACKEND"] = "Agg"
using TyPlot
# 批量生成多个图形并保存
for i in 1:5
f = figure()
x = range(0, 2π, length=100)
y = sin.(x .+ i*0.5)
plot(x, y)
title("正弦波 #$i")
saveas(f, "plot_$i.png")
end
plt_close("all") # 无界面模式下图窗需要通过函数手动关闭
# 注意事项
设置时机:必须在
using TyPlot之前设置环境变量,TyPlot 在加载时确定后端。模块重新加载:修改环境变量后重新加载 TyPlot 无法立即切换模式,需要重启 Julia 终端。
功能限制:无界面模式下无法进行交互操作(如鼠标点击、缩放等),但保存、导出功能正常。