rqt_plot: PyQt4 и PyQt5 обертывают один и тот же класс объектов - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь использовать функцию rqt_plot в ROS, и каждый раз, когда я звоню rqt_plot, я получаю:

Traceback (most recent call last):
  File "/opt/ros/kinetic/bin/rqt_plot", line 6, in <module>
    from rqt_plot.plot import Plot
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rqt_plot/plot.py", line 43, in <module>
    from .data_plot import DataPlot
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rqt_plot/data_plot/__init__.py", line 44, in <module>
    from .pyqtgraph_data_plot import PyQtGraphDataPlot
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rqt_plot/data_plot/pyqtgraph_data_plot.py", line 46, in <module>
    from pyqtgraph import __version__ as pyqtgraph_version
  File "/usr/lib/python2.7/dist-packages/pyqtgraph/__init__.py", line 13, in <module>
    from .Qt import QtGui
  File "/usr/lib/python2.7/dist-packages/pyqtgraph/Qt.py", line 104, in <module>
    from PyQt4 import QtGui, QtCore, uic
RuntimeError: the PyQt4.QtCore and PyQt5.QtCore modules both wrap the QObject class

Я видел, как другие люди исправляли это, удаляя Qt4 и используя только Qt5, но я не совсем уверен, почему эта проблема существует для меня, потому что я не верю, что у меня даже установлен qt4.

Calling pip3 uninstall pyqt4 возвращает:

Cannot uninstall requirement pyqt4, not installed

Как я могу заставитьrqt_plot использовать qt5 или что еще мне следует сделать?

Это с ROS кинетической и Ubuntu 16.04 LTS.

1 Ответ

0 голосов
/ 05 марта 2019

Возможно, у вас установлен Qt4, чтобы проверить его, открыв python из командной строки и запустив:

from PyQt4.QtCore import QT_VERSION_STR
print(QT_VERSION_STR)

Аналогично вы можете проверить Qt5, заменив 4 на 5. Однако вам нужно будет выйти исначала перезапустите python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...