punto - pylab python
matplotlib: RuntimeError: Python no se instala como marco (5)
A continuación funcionó para mí:
import matplotlib
matplotlib.use(''TkAgg'')
import matplotlib.pyplot as plt
Referencia: https://github.com/tensorflow/tensorflow/issues/2375
Esta pregunta se ha hecho antes, here , también here . Sin embargo, la solución no solucionó el problema para mi caso.
El error original es que cuando intento import matplotlib.pyplot
, obtuve:
Seguimiento (última llamada más reciente): Archivo "", línea 1, en Archivo "/Users/XX/anaconda/lib/python2.7/site-packages/matplotlib/pyplot.py", línea 114, en _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup () Archivo "/Users/XX/anaconda/lib/python2.7/site-packages/matplotlib/backends/ init .py", línea 32, en pylab_setup globals (), locals (), [backend_name ], 0) Archivo "/Users/XX/anaconda/lib/python2.7/site-packages/matplotlib/backends/backend_macosx.py", línea 24, desde matplotlib.backends import _macosx RuntimeError: Python no está instalado como un marco de referencia. El backend de Mac OS X no podrá funcionar correctamente si Python no está instalado como marco. Consulte la documentación de Python para obtener más información sobre la instalación de Python como marco en Mac OS X. Reinstale Python como marco o pruebe uno de los otros backends. Si está trabajando con Matplotlib en un entorno virtual, consulte "Trabajar con Matplotlib en entornos virtuales" en la sección de Preguntas frecuentes de Matplotlib.
Seguí las soluciones para agregar un archivo ~/.matplotlib/matplotlibrc
con el código: backend: TkAgg
. Después de hacer eso, mi error cambió a:
/Users/XX/anaconda/lib/python2.7/site-packages/matplotlib/font_manager.py:273: UserWarning: Matplotlib está creando el caché de fuentes usando fc-list. Esto puede tomar un momento. warnings.warn (''Matplotlib está construyendo el caché de fuentes usando fc-list. Esto puede demorar un momento.'') objc [25120]: La aplicación TKA de clase se implementa en /Users/XX/anaconda/lib/libtk8.5.dylib y /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk. Uno de los dos será usado. Cuál es indefinido. objc [25120]: La clase TKMenu se implementa en /Users/XX/anaconda/lib/libtk8.5.dylib y /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk. Uno de los dos será usado. Cuál es indefinido. objc [25120]: La clase TKContentView se implementa en /Users/XX/anaconda/lib/libtk8.5.dylib y /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk. Uno de los dos será usado. Cuál es indefinido. objc [25120]: La clase TKWindow se implementa en /Users/XX/anaconda/lib/libtk8.5.dylib y /System/Library/Frameworks/Tk.framework/Versions/8.5/Tk. Uno de los dos será usado. Cuál es indefinido.
No tengo idea de cómo arreglar eso. No estoy usando una máquina virtual. ¿Usted me podría ayudar? ¡Gracias!
PD: descubrí que al agregar:
importar matplotlib
matplotlib.use (''TkAgg'')
Antes de import matplotlib.pyplot
, parece funcionar. Pero agregar esas dos líneas de códigos cada vez es molesto ... ¿Alguien sabe qué está pasando y cómo puedo solucionarlo? ¡Gracias!
Ejecuto mi script en virtualenv. La versión de Python es 3.5.
Añadir una línea:
backend: TkAgg
en archivo:
~/.matplotlib/matplotlibrc
Esto solucionó el problema.
Instalé Jupyter Notebook en virtualenv y a continuación funcionó para mí:
En la consola:
echo "backend: TkAgg" >> ~/.matplotlib/matplotlibrc
pip install matplotlib==2.1.0
En el cuaderno:
import matplotlib
Reinicie el kernel:
dataframe.plot.hist()
...
En mi opinión, solucionará el error.
Tuve los mismos problemas en Python 2.7 en virtualenv y logré solucionarlos simplemente reduciendo la calificación de matplotlib a la versión 2.1.0
Yo también estaba teniendo el mismo error. Lo que he hecho es instalar paquetes de miniconda y usar pythonw. La aplicación Python ya estaba instalada en mi mac. La instalación es tan simple como romper un huevo. Simplemente golpee el archivo .sh en el terminal.