matplotlib.pyplot报错ImportError(“Failed to import any qt binding“)和Linux图形界面安装

matplotlib.pyplot报错ImportError(“Failed to import any qt binding”)和Linux图形界面安装

import matplotlib.pyplot的时候出现如下报错:

>>> from matplotlib import pyplot
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/pyplot.py", line 115, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 62, in pylab_setup
    [backend_name], 0)
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_qt5agg.py", line 15, in <module>
    from .backend_qt5 import (
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/backends/backend_qt5.py", line 19, in <module>
    import matplotlib.backends.qt_editor.figureoptions as figureoptions
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/backends/qt_editor/figureoptions.py", line 20, in <module>
    import matplotlib.backends.qt_editor.formlayout as formlayout
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/backends/qt_editor/formlayout.py", line 54, in <module>
    from matplotlib.backends.qt_compat import QtGui, QtWidgets, QtCore
  File "/home/observer/anaconda2/lib/python2.7/site-packages/matplotlib/backends/qt_compat.py", line 158, in <module>
    raise ImportError("Failed to import any qt binding")
ImportError: Failed to import any qt binding

如果上网搜索的结果一般是认为没有装PyQt包,可以用conda install -c anaconda pyqt来安装,或者用conda install -c anaconda pyqt=5来指定安装PyQt5。在python中使用import PyQt5确认安装完成。
但是这样未必能解决问题,安装了PyQt5之后仍然可能有相同报错。另一种可能性是系统未安装图形界面(常见于服务器),可以使用eog指令来测试,如果显示eog: command not found则应该是需要安装图形界面,以下内容复制自ShuZhaoCL的博客
对于CentOS 8系统,可以使用指令yum groupinstall "Server with GUI" -y安装图形界面,安装需要root用户或者sudo权限,安装比较久。
安装完成之后输入systemctl get-default查看系统启动模式,输出是multi-user.target代表命令行终端,graphical.target代表图形化界面,应该会输出multi-user.target
可以用systemctl set-default graphical.target设置默认启动为图形界面(ctl是control的意思),同样需要sudo权限,重启后界面会自动是图形窗口了。同样可以用systemctl set-default multi-user.target换回命令界面启动。
使用sudo reboot重启界面即可正常使用eogpyplot

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值