Удаленный интерпретатор PyCharm (2019.1) + ошибка импорта Matplotlib

При создании новой среды conda с Python 3.6 у PyQt5 (pyqt==5.6.0) возникли проблемы с инициализацией из PyCharm версии 2019.1.

После ssh -Y в поле построение графиков из оболочки iPython работало нормально.

Но импорт matplotlib из PyCharm вызвал следующую ошибку:

import matplotlib.pyplot as plt
Traceback (most recent call last):
  File "/share/dir/python/conda-env-py36/lib/python3.6/site-packages/IPython/core/interactiveshell.py", line 3296, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
  File "<ipython-input-3-a0d2faabd9e9>", line 1, in <module>
    import matplotlib.pyplot as plt
  File "/home/user/.pycharm_helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 20, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "/share/dir/python/conda-env-py36/lib/python3.6/site-packages/matplotlib/pyplot.py", line 2609, in <module>
    install_repl_displayhook()
  File "/share/dir/python/conda-env-py36/lib/python3.6/site-packages/matplotlib/pyplot.py", line 166, in install_repl_displayhook
    ip.enable_gui(ipython_gui_name)
  File "/home/user/.pycharm_helpers/pydev/_pydev_bundle/pydev_ipython_console_011.py", line 130, in enable_gui
    return real_enable_gui(gui, app)
  File "/home/user/.pycharm_helpers/pydev/pydev_ipython/inputhook.py", line 536, in enable_gui
    return gui_hook(app)
  File "/home/user/.pycharm_helpers/pydev/pydev_ipython/inputhook.py", line 174, in enable_qt
    from pydev_ipython.qt_for_kernel import QT_API, QT_API_PYQT5
  File "/home/user/.pycharm_helpers/pydev/_pydev_bundle/pydev_import_hook.py", line 20, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_for_kernel.py", line 115, in <module>
    QtCore, QtGui, QtSvg, QT_API = load_qt(api_opts)
  File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_loaders.py", line 258, in load_qt
    if not can_import(api):
  File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_loaders.py", line 146, in can_import
    if not has_binding(api):
  File "/home/user/.pycharm_helpers/pydev/pydev_ipython/qt_loaders.py", line 114, in has_binding
    imp.find_module('QtCore', mod.__path__)
  File "/share/dir/python/conda-env-py36/lib/python3.6/imp.py", line 270, in find_module
    "not {}".format(type(path)))
RuntimeError: 'path' must be None or a list, not <class '_frozen_importlib_external._NamespacePath'>

Следование трассировке стека и просмотр соответствующих файлов наводят меня на мысль, что это как-то связано с установкой conda или распознаванием PyCharm пакетов в среде conda.

Кто-нибудь еще сталкивался с проблемами при построении графиков на основе PyQt5 с помощью Matplotlib 2.2.2 из PyCharm?

Анализ настроения постов в Twitter с помощью Python, Tweepy и Flair
Анализ настроения постов в Twitter с помощью Python, Tweepy и Flair
Анализ настроения текстовых сообщений может быть настолько сложным или простым, насколько вы его сделаете. Как и в любом ML-проекте, вы можете выбрать...
7 лайфхаков для начинающих Python-программистов
7 лайфхаков для начинающих Python-программистов
В этой статье мы расскажем о хитростях и советах по Python, которые должны быть известны разработчику Python.
Установка Apache Cassandra на Mac OS
Установка Apache Cassandra на Mac OS
Это краткое руководство по установке Apache Cassandra.
Сертификатная программа "Кванты Python": Бэктестер ансамблевых методов на основе ООП
Сертификатная программа "Кванты Python": Бэктестер ансамблевых методов на основе ООП
В одном из недавних постов я рассказал о том, как я использую навыки количественных исследований, которые я совершенствую в рамках программы TPQ...
Создание персонального файлового хранилища
Создание персонального файлового хранилища
Вы когда-нибудь хотели поделиться с кем-то файлом, но он содержал конфиденциальную информацию? Многие думают, что электронная почта безопасна, но это...
Создание приборной панели для анализа данных на GCP - часть I
Создание приборной панели для анализа данных на GCP - часть I
Недавно я столкнулся с интересной бизнес-задачей - визуализацией сбоев в цепочке поставок лекарств, которую могут просматривать врачи и...
2
0
96
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

При установке pyqt я использовал conda. При запуске conda install пакет PyQt оказался связанным, а не скопированным в среду. Ссылка, по-видимому, вела себя не так, как ожидалось.

Я решил это, указав --copy. Подробнее см. в конда документы. Вот полная команда установки:

conda install pyqt==5.6.0 --copy

Для меня проблема заключалась в том, что я установил pyqt5 через pip, а pyqt уже был установлен через conda. Бегать:

conda remove pyqt
conda install matplotlib

Другие вопросы по теме