instalar - matplotlib python 3 windows
No se puede "importar matplotlib.pyplot como plt" en virtualenv (7)
Aunque la mayoría de las respuestas parecen apuntar a parchear el script de
activate
para usar el sistema Python, estaba teniendo problemas para que eso funcione y una solución fácil para mí, aunque un poco difícil, era instalar matplotlib en el entorno global y usarlo en lugar de una instancia virtualenv.
Puede hacer esto creando su virtualenv con el indicador --system-site-packages como
virtualenv --system-site-packages foo
, o usando el indicador universal al instalar
pip install -U matplotlib
como
pip install -U matplotlib
.
Estoy trabajando con frasco en un entorno virtual.
Pude instalar matplotlib con pip, y puedo
import matplotlib
en una sesión de Python.
Sin embargo, cuando lo importo como
matplotlib.pyplot as plt
Obtuve el siguiente error:
>>> import matplotlib.pyplot as plt
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "//anaconda/envs/myenv/lib/python2.7/site-packages/matplotlib/pyplot.py", line 109, in <module>
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "//anaconda/envs/myenv/lib/python2.7/site-packages/matplotlib/backends/__init__.py", line 32, in pylab_setup
globals(),locals(),[backend_name],0)
File "//anaconda/envs/myenv/lib/python2.7/site-packages/matplotlib/backends/backend_macosx.py", line 24, in <module>
from matplotlib.backends import _macosx
RuntimeError: Python is not installed as a framework. The Mac OS X backend will not be able to function correctly if Python is not installed as a framework. See the Python documentation for more information on installing Python as a framework on Mac OS X. Please either reinstall Python as a framework, or try one of the other backends.
Estoy confundido acerca de por qué me pide que instale Python como framework. ¿Ya no existe? ¿Qué significa "instalar Python como framework" y cómo lo instalo?
Esta solution funcionó para mí. Si ya instaló matplotlib usando pip en su entorno virtual, puede escribir lo siguiente:
$ cd ~/.matplotlib
$ nano matplotlibrc
Y luego, escribe
backend: TkAgg
allí.
Si necesita más información, simplemente vaya al enlace de la solución.
Obtuve el mismo error e intenté la respuesta de
Jonathan
:
Puede solucionar este problema utilizando el backend Agg
Vaya a
User/yourname/.matplotlib
y abra / creematplotlibrc
y agregue el siguientebackend : Agg
líneabackend : Agg
y debería funcionar para usted.
backend: Qt4Agg
el programa, no hay error, pero tampoco tramas, e intenté
backend: Qt4Agg
, imprime que no tengo PyQt4 instalado.
Luego probé otro backend:
backend: TkAgg
, ¡funciona!
Entonces, tal vez podamos probar los backends de diferencia y algunos funcionen o instalen los paquetes requeridos como PyQt4.
Aquí hay un fragmento de python de muestra que puede probar y probar matplotlib.
import matplotlib
matplotlib.use(''TkAgg'')
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [0, 3, 7])
plt.show()
Puede solucionar este problema utilizando el backend
Agg
Vaya a
User/yourname/.matplotlib
y abra / cree
matplotlibrc
y agregue el siguiente
backend : Agg
línea
backend : Agg
y debería funcionar para usted.
Si no desea establecer un archivo de configuración
.matplotib/matplotlibrc
, puede evitar este problema configurando el backend
''Agg''
en tiempo de ejecución justo después de importar
matplotlib
y antes de importar
matplotlib.pyplot
:
In [1]: import matplotlib
In [2]: matplotlib.use(''Agg'')
In [3]: import matplotlib.pyplot as plt
In [4]: fig, ax = plt.subplots(1, 1)
In [5]: import numpy as np
In [6]: x = np.linspace(-1., 1.)
In [7]: y = np.sin(x)
In [8]: ax.plot(x, y)
Out[8]: [<matplotlib.lines.Line2D at 0x1057ecf10>]
In [9=]: fig.savefig(''myplot.png'')
Tuve un problema similar cuando usé pip para instalar matplotlib. Por defecto, instaló la última versión que era 1.5.0. Sin embargo, tenía otro entorno virtual con Python 3.4 y matplotlib 1.4.3 y este entorno funcionó bien cuando importé matplotlib.pyplot. Por lo tanto, instalé la versión anterior de matplotlib usando lo siguiente:
cd path_to_virtual_environment # assume directory is called env3
env3/bin/pip install matplotlib==1.4.3
Sé que esto es solo una solución, pero funcionó para mí como una solución a corto plazo.
Una solución limpia y fácil es crear un núcleo que establezca
PYTHONHOME
en
VIRTUAL_ENV
y luego utilice el sistema ejecutable Python (en lugar del que está en virtualenv).
Si desea automatizar la creación de dicho núcleo, puede usar el jupyter-virtualenv-osx .