ipython中matplotlib无法显示图片Could not connect to any x display

4 篇文章 0 订阅
1 篇文章 0 订阅

0 问题描述

使用xshell,(xmanager), 终端输入ipython,调用matplotlib函数,结果一调用就被退出,且不能在终端输入任何命令。查了很久没有适合这个问题的回答,头疼~~
在这里插入图片描述
找了很多关于解决这个问题的博文,发现有如下说法,即通过将图片保存再查看。

import matplotlib
matplotlib.use('Agg')

import matplotlib.pyplot as plt
...
...
plt.savefig('pic.png')

这种方法没法即时查看图片,显然治标不治本。
无意中查到说可以在终端输入xclock看是否显示图片来检查是不是xmanager出的问题。
在这里插入图片描述
看来无法显示图片。同时注意到有个错误信息提示:
在这里插入图片描述
那很可能就是Xauthority这个文件出了问题。

1 解决办法

查到了一篇帖子,意思是root跟个人用户之间有冲突,或许是无意中有了错误的操作,使得root转向了个人目录。于是我直接删除了.Xauthority(建议不要直接删除,先备份一下,以防这个方法无效还可以加进来)

rm ~/.Xauthority

然后我重新关闭了界面,再次打开,就可以使用了(花了好长时间,希望对大家有用)。
(当我第一次打开时,会提示.Xauthority不存在,因为我删了,当第二次打开界面时,会自动生成.Xauthority,完美解决这个问题!)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
更新:(2021.7.13)
今天又遇到这个问题,且删除重启之后还是没有自动创建.Xauthority文件,且不能画图(xclock也没显示)。
**原因:**因为服务器给每个用户分配的存储是有限的,比如我个人用户只有500M,而我创建的文件太多,超过了这个限制,导致.Xauthority无法创建,其它如vscode也无法使用(因为vscode创建的server比较大,超过了磁盘额度限制)。
解决方法:将个人用户的一些不需要的文件删除,或者将它移动到其他空的没有限制的盘

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值