¿Cómo instalo mayAVI para mi python3 en macOS Sierra?

1

He estado usando matplotlib para trazar gráficos en 3D, sin embargo, he encontrado que matplotlib no tiene una función de arrastrar y rotar para los gráficos en 3D trazados. Me gustaría instalar mayAVI que me permita hacerlo, sin embargo, no puedo encontrar ningún método infalible para instalarlo. ¿Alguien podría guiarme en el proceso de instalación? No uso entornos virtuales.

    
pregunta Tian 18.06.2017 - 17:19

3 respuestas

2

Recientemente experimenté exactamente el mismo problema (querer usar MayaVi en lugar de matplotlib para gráficos 3D y animaciones, no querer usar entornos virtuales y querer usar MayaVi con python3). Estos son los pasos directos que seguí para comenzar a usar MayaVi en mi macOS Sierra 10.12.5.

(1) brew install vtk --with-python3 --without-python

  • Esto tomó aproximadamente 33 minutos en mi máquina
  • Por lo que he leído, solo puede haber una versión / envoltura de vtk instalada a la vez, por lo que, dado que instaló vtk sin las banderas, es posible que desee ejecutar brew uninstall vtk antes de ejecutar este comando

(2) pip3 install mayavi

A continuación, intenté ejecutar el script desde enlace para ver si se correría Tomé el guión exactamente como lo encontré, agregué #! / Usr / bin / env python3 y lo ejecuté como ./test.py . Esto resultó en:

======

Traceback (última llamada más reciente):   Archivo "./test.py", línea 6, en     f = mlab.figure (tamaño = (500,500))   Archivo "/usr/local/lib/python3.6/site-packages/mayavi/tools/figure.py", línea 63, en la figura     motor = get_engine ()   Archivo "/usr/local/lib/python3.6/site-packages/mayavi/tools/engine_manager.py", línea 101, en get_engine     volver auto.new_engine ()   Archivo "/usr/local/lib/python3.6/site-packages/mayavi/tools/engine_manager.py", línea 146, en new_engine     check_backend ()   Archivo "/usr/local/lib/python3.6/site-packages/mayavi/tools/engine_manager.py", línea 49, en check_backend     '' ') ImportError: no se pudo importar el backend para las características

Asegúrese de que tiene TraitsBackendWx o TraitsBackendQt proyectos instalados. Si instaló Mayavi con easy_install, intente Instalación fácil . easy_install Mayavi [aplicación] también funcionará.

Si realizó una comprobación de origen, asegúrese de ejecutar 'python setup.py install' en Rasgos, TraitsGUI y el backend de Traits de su elección.

Asegúrese también de que wxPython o PyQT estén instalados. wxPython: http: //www.wxpython.org/ PyQT: http: //www.riverbankcomputing.co.uk/software/pyqt/intro '

=====

Entonces, después de buscar en Google el problema anterior, me topé con una página de problemas con github que decía instalar los siguientes elementos:

(3) brew install wxpython

(4) pip3 install traitsui (esto ya estaba instalado en mi máquina)

Luego, necesitaba instalar PyQt, así que seguí las instrucciones de una pregunta de desbordamiento de pila:

(5) brew tap cartridge / qt4

(6) elaborar tap-pin cartridge / qt4

(7) brew install qt

(8) brew install pyside

  • Esto tomó cerca de 11 minutos en mi máquina

Ahora intenté ejecutar el script de nuevo. Esta vez se ejecutó, pero me salió el error:

AttributeError: module 'tvtk.tools.visual' has no attribute 'color'

Así que cambié la línea de importación y modifiqué algunas de las líneas donde se hacen las cajas:

#!/usr/bin/env python3                                                                               

from mayavi import mlab
from tvtk.tools import visual
from vtk.util import colors as color

# Create a figure                                                                                    
f = mlab.figure(size=(500,500))
# Tell visual to use this as the viewer.                                         
visual.set_viewer(f)

# A silly visualization.                                                                             
mlab.test_plot3d()

# Even sillier animation.                                                                            
b1 = visual.box()
b2 = visual.box(x=4., color=color.red)
b3 = visual.box(x=-4, color=color.red)
b1.v = 5.0

@mlab.show
@mlab.animate(delay=250)
def anim():
    """Animate the b1 box."""
    while 1:
        b1.x = b1.x + b1.v*0.1
        if b1.x > 2.5 or b1.x < -2.5:
            b1.v = -b1.v
        yield

# Run the animation.                                                                                 
anim()

¡Y puedo ejecutar el script con éxito!

    
respondido por el Erdrick 30.07.2017 - 00:52
1

Mi respuesta es similar a la respuesta anterior de Erdrick, sin embargo, uso conda en lugar de pip, lo que simplifica la instalación.

En primer lugar, vamos a construir un entorno virtual:

conda create --name myenv python=3

En segundo lugar, active el entorno llamado 'myenv', y actualice la cuenta a través de:

conda update -n base conda

En tercer lugar,

brew install vtk --with-python3 --without-python

Finalmente,

conda install -c anaconda mayavi 

Este comando conda también instalará las bibliotecas dependientes requeridas por mayavi.

Estos comandos pueden funcionar en los últimos macos Mojave y la Sierra más antigua de mi lado.

    
respondido por el Fang 28.11.2018 - 06:56
0

¿Tienes Homebrew ? Si no, así es como lo instalas. Puede tardar unos minutos. Solo copia y pega esto:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

después, primero debes instalar VTK Python a través de:

brew install vtk

y luego instalar mayAVI:

pip install mayavi

Pip es el administrador de paquetes de python que viene automáticamente con python, y como tienes una Mac, ya la tienes instalada en tu sistema. Si por alguna razón no lo hace, puede seguir las instrucciones aquí si es necesario para descargarlo

    
respondido por el Gleland 18.06.2017 - 20:41

Lea otras preguntas en las etiquetas