Mayavi: Problème d'installation de Mayavi sous Mac OSX via Homebrew et pip

Créé le 21 déc. 2016  ·  9Commentaires  ·  Source: enthought/mayavi

J'essaie d'installer et d'utiliser mayavi sous Mac OSX via homebrew et pip. J'ai installé python2, qt5, pyqt5 et vtk 7.1 via homebrew et modifié le chemin pour faire de Homebrew python celui par défaut. Ensuite, lorsque j'essaie d'installer mayavi via pip. Lorsque j'exécute mayavi2 en ligne de commande, j'obtiens l'erreur suivante. Je ne vois pas de TraitsBackendWx ou TraitsBackendQt dans pip search . Comment résoudre cette erreur ?

Traceback (most recent call last):
  File "/usr/local/bin/mayavi2", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/mayavi/scripts/mayavi2.py", line 647, in main
    '''
ImportError: Could not import backend for traits
________________________________________________________________________________
Make sure that you have either the TraitsBackendWx or the TraitsBackendQt
projects installed. If you installed Mayavi with easy_install, try easy_install
<pkg_name>. easy_install Mayavi[app] will also work.

If you performed a source checkout, be sure to run 'python setup.py install'
in Traits, TraitsGUI, and the Traits backend of your choice.

Also make sure that either wxPython or PyQT is installed.
wxPython: http://www.wxpython.org/
PyQT: http://www.riverbankcomputing.co.uk/software/pyqt/intro

Commentaire le plus utile

En effet, le backend Qt5 fonctionne parfaitement ! (enfin, avec tous les exemples que j'ai testés ;) en utilisant à la fois le programme mayavi et ipython) Merci pour votre astuce !
Lorsque je parcourais le code source, j'ai trouvé du code pour un backend Qt5 déjà validé il y a des mois.

Pour être plus précis sur ma configuration : j'utilise OSX et j'ai installé python 3.6, Qt5, VTK et PyQt à l'aide du gestionnaire de packages homebrew. J'ai installé/construit traitsui, pyface et mayavi sur le git master actuel en utilisant pip3. Toutes les autres dépendances ont été installées à partir de pip3 sous leur forme de version habituelle.

Donc, en ce qui concerne ce ticket, je suppose qu'il peut être fermé avec le verdict suivant concernant les backends sur OSX :

  • wxPython n'est une option que lorsque vous utilisez python 2.x
  • Lorsque vous utilisez python 2.x, vous pouvez également utiliser PyQT4/PySide (mais vous devez le créer vous-même ou utiliser d'autres gestionnaires de packages que homebrew/pip)
  • Lorsque vous utilisez python 3.x, vous devez utiliser PyQT5 mais devez créer traitsui/pyface/mayavi à partir de git master
  • PySide (Qt4) n'est qu'une option pour une gamme limitée de versions de python 3.x (avec x < 5, IIRC), PySide 2 (Qt5) n'est pas pris en charge à ma connaissance ? Mais je ne les ai pas testés, je voulais juste les mentionner

Tous les 9 commentaires

Salut @rambalachandran , TraitsBackendWx et TraitsBackendQt sont remplacés par traitsui et pyface . Pourriez-vous essayer d'installer traitsui et pyface s'il vous plaît ? Et vous voudrez peut-être utiliser qt4 et pyqt4 au lieu de Qt5.

Merci. Pouvez-vous s'il vous plaît me dire comment installer pyqt4? Lorsque j'essaie pip install PyQt4 , une erreur s'affiche, bien que pip search PyQt4 montre qu'un tel package existe

J'ai installé tous les packages correspondants. Je n'ai pas trouvé PyQt4 ou wxPython dans pip, j'ai donc installé PySide . J'ai inclus le gel de pépins en pièce jointe ici. Même après cela, lorsque j'essaie d'exécuter mayavi2 , j'obtiens la même erreur

Traceback (most recent call last):
  File "/usr/local/bin/mayavi2", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/site-packages/mayavi/scripts/mayavi2.py", line 647, in main
    '''
ImportError: Could not import backend for traits
________________________________________________________________________________
Make sure that you have either the TraitsBackendWx or the TraitsBackendQt
projects installed. If you installed Mayavi with easy_install, try easy_install
<pkg_name>. easy_install Mayavi[app] will also work.

If you performed a source checkout, be sure to run 'python setup.py install'
in Traits, TraitsGUI, and the Traits backend of your choice.

Also make sure that either wxPython or PyQT is installed.
wxPython: http://www.wxpython.org/
PyQT: http://www.riverbankcomputing.co.uk/software/pyqt/intro

pipInstallations.txt

L'installation de wxpython depuis homebrew a résolu le problème et l'interface graphique de mayavi2 s'ouvre maintenant.

@rambalachandran -- pouvons-nous clore ce problème ?

Cela signifie-t-il que je n'ai pas de chance sur OSX en utilisant python 3.6 ?
L'homebrew du gestionnaire de paquets mentionné n'a que wxPython classique, qui ne prend pas en charge python 3. pip a en fait abandonné cette version et fournit la version "phoenix" compatible python 3 mais mayavi est incompatible avec celle-ci.
pip3 n'a pas de distribution PyQT4 pour OSX et PyQt5 n'est pas pris en charge (au moins, il n'est pas capté par les traits, même s'il est importé avec succès à la main) ?
C'est une situation assez inconfortable.

@Argon- -- est-ce que cela est valable pour la version de github ou avez-vous pip l'installer à partir de pypi. La dernière version devrait fonctionner avec Qt5 mais nécessite également des versions plus récentes de traitsui/pyface qui ne sont pas encore publiées. Je poserai des questions sur une nouvelle version de traitsui/pyface prenant en charge qt5, puis je publierai également une version de mayavi.

J'ai essayé le master actuel de pyface mais je ne savais pas que j'avais également besoin d'un traitui plus récent (et mayavi). Y a-t-il d'autres dépendances que je dois créer localement ?
Dans ce cas, je vais essayer/tester à nouveau (demain) et faire rapport.

En effet, le backend Qt5 fonctionne parfaitement ! (enfin, avec tous les exemples que j'ai testés ;) en utilisant à la fois le programme mayavi et ipython) Merci pour votre astuce !
Lorsque je parcourais le code source, j'ai trouvé du code pour un backend Qt5 déjà validé il y a des mois.

Pour être plus précis sur ma configuration : j'utilise OSX et j'ai installé python 3.6, Qt5, VTK et PyQt à l'aide du gestionnaire de packages homebrew. J'ai installé/construit traitsui, pyface et mayavi sur le git master actuel en utilisant pip3. Toutes les autres dépendances ont été installées à partir de pip3 sous leur forme de version habituelle.

Donc, en ce qui concerne ce ticket, je suppose qu'il peut être fermé avec le verdict suivant concernant les backends sur OSX :

  • wxPython n'est une option que lorsque vous utilisez python 2.x
  • Lorsque vous utilisez python 2.x, vous pouvez également utiliser PyQT4/PySide (mais vous devez le créer vous-même ou utiliser d'autres gestionnaires de packages que homebrew/pip)
  • Lorsque vous utilisez python 3.x, vous devez utiliser PyQT5 mais devez créer traitsui/pyface/mayavi à partir de git master
  • PySide (Qt4) n'est qu'une option pour une gamme limitée de versions de python 3.x (avec x < 5, IIRC), PySide 2 (Qt5) n'est pas pris en charge à ma connaissance ? Mais je ne les ai pas testés, je voulais juste les mentionner
Cette page vous a été utile?
0 / 5 - 0 notes