DanGoodrick
DanGoodrick

Reputation: 3198

ImportError: No module named PyQt5

I get this error when I try to import matplotlib.pyplot with an Anaconda distribution of Python 2.7 running in a command window, on a windows X64 machine with Windows 10. I can import the module from within my Jupyter notebook just fine. Is there a fix for this?

The whole traceback is:

C:\Users\You>python
Python 2.7.14 |Anaconda custom (64-bit)| (default, Oct 15 2017, 03:34:40) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib.pyplot
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\pyplot.py", line 113, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\backends\__init__.py", line 60, in pylab_setup
    [backend_name], 0)
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\backends\backend_qt5agg.py", line 16, in <module>
    from .backend_qt5 import (
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\backends\backend_qt5.py", line 18, in <module>
    import matplotlib.backends.qt_editor.figureoptions as figureoptions
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\backends\qt_editor\figureoptions.py", line 20, in <module>
    import matplotlib.backends.qt_editor.formlayout as formlayout
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\backends\qt_editor\formlayout.py", line 56, in <module>
    from matplotlib.backends.qt_compat import QtGui, QtWidgets, QtCore
  File "C:\ProgramData\Anaconda2\lib\site-packages\matplotlib\backends\qt_compat.py", line 137, in <module>
    from PyQt5 import QtCore, QtGui, QtWidgets
ImportError: No module named PyQt5

Upvotes: 0

Views: 1689

Answers (1)

DanGoodrick
DanGoodrick

Reputation: 3198

As mentioned in the comments, you have to import matplotlib first, change the backend and then import pyplot.

>>> import matplotlib
>>> matplotlib.use('Qt4Agg')
>>> import matplotlib.pyplot

Upvotes: 1

Related Questions