首页 > 解决方案 > Matplotlib - AttributeError:模块'sip'没有属性'setapi'

问题描述

我已经使用 Python 3.9.2 和 pip 21.0.1 设置了虚拟环境并安装了 matplotlib(3.4.1)。但是在导入库时

import matplotlib.pyplot as plt

发生错误 -

    Traceback (most recent call last):
  File "G:\MachineLearning\tut3.py", line 1, in <module>
    import matplotlib.pyplot as plt
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\pyplot.py", line 2469, in <module>
    switch_backend(rcParams["backend"])
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\__init__.py", line 619, in __getitem__
    plt.switch_backend(rcsetup._auto_backend_sentinel)
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\pyplot.py", line 257, in switch_backend
    switch_backend(candidate)
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\pyplot.py", line 277, in switch_backend
    class backend_mod(matplotlib.backend_bases._Backend):
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\pyplot.py", line 278, in backend_mod
    locals().update(vars(importlib.import_module(backend_name)))
  File "C:\Users\HP\miniconda3\lib\importlib\__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\backends\backend_qt5agg.py", line 11, in <module>
    from .backend_qt5 import (
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\backends\backend_qt5.py", line 13, in <module>
    import matplotlib.backends.qt_editor.figureoptions as figureoptions
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\backends\qt_editor\figureoptions.py", line 11, in <module>
    from matplotlib.backends.qt_compat import QtGui
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\backends\qt_compat.py", line 174, in <module>
    _setup()
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\backends\qt_compat.py", line 134, in _setup_pyqt4
    _setup_pyqt4_internal(api=2)
  File "G:\MachineLearning\machinelearning\lib\site-packages\matplotlib\backends\qt_compat.py", line 117, in _setup_pyqt4_internal
    sip.setapi(_sip_api, api)
AttributeError: module 'sip' has no attribute 'setapi'

我尝试降级 matplotlib 和 numpy 但同样的错误不断出现。这些是安装在虚拟环境中的软件包 -

cycler==0.10.0
kiwisolver==1.3.1
matplotlib==3.4.1
numpy==1.18.5
pandas==1.2.4
Pillow==8.2.0
pyparsing==2.4.7
python-dateutil==2.8.1
pytz==2021.1
six==1.15.0

谁能帮我解决这个问题?

标签: pythonmatplotlib

解决方案


推荐阅读