¿Cómo instalar matplotlib en OS X?


19

Quiero instalar matplotlib en OS X. Si es posible, usando homebrew.

Instalé Python 2.7.1 usando brew install python, modifiqué mi ruta para usarlo,
instalé pip usando brew install pip
instalé numpy 1.5.1 usando pip install numpy
instalé scipy 0.8.0 usandopip install scipy

Aquí es donde se pone peludo. pip install matplotlibbuscará la versión incorrecta de matplotlib , que es incompatible con la versión reciente de numpy.

La solución es buscar la versión correcta de matplotlib manualmente:

pip install -f http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-1.0.1/matplotlib-1.0.1.tar.gz matplotlib

Pero , esa versión no se puede compilar ya que no puede encontrar los encabezados de tipo libre:

En el archivo incluido desde src / ft2font.cpp: 1:
src / ft2font.h: 14: 22: error: ft2build.h: No existe tal archivo o directorio

Estos encabezados se instalan realmente /usr/X11/includecomo parte de las herramientas para desarrolladores X11.

Entonces, ¿cómo puedo hacer que matplotlib use estos encabezados?


Intentado brew install freetype?
ismail

Si. Ese paquete no está disponible. Sin embargo, hay una fórmula en github que lo proporciona. Sin embargo, no ayuda.
bastibe

1
brew install freetypefuncionó para mí a partir del 7 de noviembre de 2012
drootang

Respuestas:


18

El problema es que cuando se compilan las extensiones C, los archivos de encabezados necesarios no están en la ruta de búsqueda, y cuando se vinculan, las bibliotecas compartidas tampoco están en la ruta de búsqueda.

Lo siguiente funcionó para mí:

export LDFLAGS="-L/usr/X11/lib"
export CFLAGS="-I/usr/X11/include -I/usr/X11/include/freetype2 -I/usr/X11/include/libpng12"
pip install matplotlib-1.0.1.tar.gz

12

La respuesta simple es: debe haber pkg-infoinstalado o de lo contrario setup.pyno podrá encontrar las bibliotecas instaladas.


1
¿Cómo se instala uno pkg-info?
bradley.ayers

@bradleybrew install pkg-info
bastibe

77
En realidad, creo que debería ser pkg-configasí brew install pkg-config. Y no lo olvides brew linktambién.
noio

Tenía pkg-config instalado, pero no funcionó. La solución bradley.ayers funcionó para mí.
schlamar

Asegúrese de que el archivo freetype2.pc esté en una ubicación que pkg-config sepa leer
drootang

3

Seguí las instrucciones de esta página . Me quedé atrapado en

pip install -e git+https://github.com/matplotlib/matplotlib#egg=matplotlib-dev

Entonces hice:

git clone https://github.com/matplotlib/matplotlib.git
cd matplotlib
python setup.py build
python setup.py install

Verifiqué mi instalación escribiendo en la terminal:

python
import matplotlib
print matplotlib.__version__
print matplotlib.__file__

Obtuve la versión 1.1.0 (a partir de este escrito) y la ruta / usr / local / Cellar / ...


A partir de hoy, Matplotlib debería estar en la versión 1.0.1. De hecho, escribí algo sobre esto aquí . Tal vez pueda encontrar información útil allí.
bastibe

Lo siento, eso es un error tipográfico. Quise decir 1.1.0.
David Xia

3

Alternativamente, puede usar MacPorts o Fink . Con MacPorts esto sería

sudo port install py27-matplotlib

que resuelve las dependencias automáticamente.

Personalmente, utilicé Macports para instalar python2.7 con matplotlib y parece funcionar bien en 10.7. Fink está en proceso de actualizar sus componentes internos para que funcionen con el nuevo sistema de compilación 10.7.


1
Personalmente prefiero Homebrew a MacPorts o Fink, ya que depende de las bibliotecas del sistema y es mucho más pirateable. Si no te importa eso, usar MacPorts o Fink es probablemente la solución más fácil.
bastibe

3

La respuesta es que no hay una biblioteca de tipo libre. simplemente hazlo:

brew install freetype

brew install freetype -> Error: No hay una fórmula disponible para freetype. ¿Cambió el nombre?
Tom

1
brew install freetypeSe instala libpngtambién.
LWZ

1

con OS X 10.10.3 lo arreglé con estos comandos

brew install freetype libpng pkg-config

¡pkg-config solucionó el problema!

Después de leer este problema, me las arreglo para solucionarlo


1

Mismo problema al usar macports. Solucionado con:

sudo port install pkgconfig

como noio sugirió para la preparación anterior.



0

En estos días, la forma más fácil es conda install matplotlib, probablemente , utilizando el condaadministrador de paquetes mediante análisis continuo.

Tenga en cuenta que puede instalar y usar condasin tener que usar la distribución completa de Anaconda. Solo pip install conda, conda inity estás listo para irte.


0

Escribí esta misma respuesta aquí, pero creo que puede ser de algún interés en esta discusión.

Pude instalar matplotlib en OSX 10.10 leyendo https://github.com/matplotlib/matplotlib/pull/3713 .
Esta no es una solución para usuarios de pip; solo una forma de instalar matplotlib en mi mac esperando una solución.

Descargué fuentes para matplotlib 1.4.2,
cambié la línea 960 en setupext.py como se describe en https://github.com/matplotlib/matplotlib/pull/3713/files :

'freetype2', 'ft2build.h',

se vuelve

'freetype2', 'freetype2/ft2build.h'

y luego compilado e instalado con:

python setup.py build
python setup.py install
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.