远端连接服务器无法绘图的bug怎么解决

本文介绍了在远程连接服务器运行Python程序时遇到的_tkinter.TclError错误,并提供了两种解决方案:一是通过matplotlib库配置,二是配置服务器的X11转发以实现远程图形界面的正确显示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在调试faster rcnn的demo程序时我遇见了这么一个问题:

_tkinter.TclError: no display name and no $DISPLAY environment variable

到网上搜了很多答案后发现大致的原因就是引文电脑通过软件远端连接服务器时无法实现可视化。

方法一:

import matplotlib
matplotlib.use('Agg')
但是我试了试仍然不行

方法二:

给服务器安装一个openssh-server 

apt-get install openssh-server 
进入到/ etc/ssh/sshd_config

对这个配置文件进行修改,ForwardX11 yes|no
如果设置为yes,则自动通过一条安全通道以不可信模式来转发X11连接,并设置shell变量DISPLAY。也可以在命令行上使用选项”-X”以不可信模式重定向X11连接。这个参数的默认值是no。要想让X11转发起作用,还必须将服务器上的/etc/sshd_config文件中的X11Forwarding设置为yes。这里我们得把这一项设置为yes
然后重启ssh
sudo /etc/init.d/ssh stop 
sudo /etc/init.d/ssh start





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值