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比较大,超过了磁盘额度限制)。
解决方法:将个人用户的一些不需要的文件删除,或者将它移动到其他空的没有限制的盘