Linux服务器没有GUI的情况下使用matplotlib绘图
需求描述:
- Linux服务器没有GUI 或者 远程单纯使用 Xshell等 命令窗口来 操作 Linux
- 使用 plt.plot 等弹窗画图时,因为没有 GUI或者 使用的 操作方法 不支持 画图弹窗的传输显示,就会报错
- 据说 使用 XManger 里面的 Xshell来 进行这个操作,如我的:
python plot_history.py
里面 有画图弹窗代码 ,便可以成功传输呈现出来。(这个是领导说的,我还没有尝试)
解决方法:在 你的 画图程序 最上方添加如下代码:
import matplotlib
import matplotlib.pyplot as plt
matplotlib.use('Agg')
情况二:
基本情况同上, cv2.imshow(“result”, out_image),需要弹窗
Xshell 报错截图:
原因:python程序 里面有 cv2.imshow(“result”, out_image),需要弹窗,这个安装了XManger才支持,XShell不支持,因此代码中注释掉该画图 代码 或者 通过判断不让它 执行。