Pip instalar el error de Matplotlib con virtualenv

Estoy tratando de instalar matplotlib en un nuevo virtualenv.

Cuando lo hago:

pip install matplotlib 

o

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

Me sale este error:

 building 'matplotlib._png' extension gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -fPIC - DPY_ARRAY_UNIQUE_SYMBOL=MPL_ARRAY_API -DPYCXX_ISO_CPP_LIB=1 -I/usr/local/include -I/usr/include -I. -I/home/sam/django-projects/datazone/local/lib/python2.7/site-packages/numpy/core/include -I. -I/usr/include/python2.7 -c src/_png.cpp -o build/temp.linux-x86_64-2.7/src/_png.o src/_png.cpp:10:20: fatal error: png.h: No such file or directory comstacktion terminated. error: command 'gcc' failed with exit status 1 

¿Alguien tiene una idea de lo que está pasando?

Cualquier ayuda muy apreciada.

La creación de Matplotlib requiere libpng (y también freetype ) que no es una biblioteca de python, por lo que pip no se freetype instalarlo (o freetype ).

Tendrá que instalar algo en la línea de libpng-devel y freetype-devel (o lo que sea el equivalente para su sistema operativo).

Consulte los requisitos / instrucciones de construcción para matplotlib.

Para generar el gráfico en formato png necesita instalar los siguientes paquetes dependientes

 sudo apt-get install libpng-dev sudo apt-get install libfreetype6-dev 

Ubuntu https://apps.ubuntu.com/cat/applications/libpng12-0/ o usando el siguiente comando

 sudo apt-get install libpng12-0 

Como he luchado con este problema dos veces (incluso después de la instalación de kubuntu 15.04) y la instalación de freetype no resolvió nada, investigué más.

La solución:
De la cuestión github:

Este error solo ocurre si pkg-config no está instalado;
un simple
sudo apt-get install pkg-config
apuntalará los caminos de inclusión por ahora.

Después de esta instalación se lleva a cabo sin problemas.

Como complemento, en Amazon EC2, lo que debo hacer es:

 sudo yum install freetype-devel sudo yum install libpng-devel sudo pip install matplotlib 

En OSX pude instalar matplotlib a través de:

 pip install matplotlib==1.4.0 

solo despues de correr

 brew install freetype 

Bajo Windows esto funcionó para mí:

 python -m pip install -U pip setuptools python -m pip install matplotlib 

(de https://matplotlib.org/users/installing.html )

 sudo apt-get install libpng-dev libjpeg8-dev libfreetype6-dev 

trabajó para mí en Ubuntu 14.04

Ninguna de las respuestas anteriores funcionó para mí en Mint, así que hice:

 sudo apt-get install build-essential g++ 

Si en MacOSx intente

 xcode-select --install 

Esto cumple con el subprocess 32 , la razón de la falla.

Para reducir los paquetes requeridos para instalar solo necesitas

 apt-get install -y \ libfreetype6-dev \ libxft-dev && \ pip install matplotlib 

y obtendrás los siguientes paquetes instalados localmente

 Collecting matplotlib Downloading matplotlib-2.2.0-cp35-cp35m-manylinux1_x86_64.whl (12.5MB) Collecting pytz (from matplotlib) Downloading pytz-2018.3-py2.py3-none-any.whl (509kB) Collecting python-dateutil>=2.1 (from matplotlib) Downloading python_dateutil-2.6.1-py2.py3-none-any.whl (194kB) Collecting pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 (from matplotlib) Downloading pyparsing-2.2.0-py2.py3-none-any.whl (56kB) Requirement already satisfied: six>=1.10 in /opt/conda/envs/pytorch-py35/lib/python3.5/site-packages (from matplotlib) Collecting cycler>=0.10 (from matplotlib) Downloading cycler-0.10.0-py2.py3-none-any.whl Collecting kiwisolver>=1.0.1 (from matplotlib) Downloading kiwisolver-1.0.1-cp35-cp35m-manylinux1_x86_64.whl (949kB) Requirement already satisfied: numpy>=1.7.1 in /opt/conda/envs/pytorch-py35/lib/python3.5/site-packages (from matplotlib) Requirement already satisfied: setuptools in /opt/conda/envs/pytorch-py35/lib/python3.5/site-packages/setuptools-27.2.0-py3.5.egg (from kiwisolver>=1.0.1->matplotlib) Installing collected packages: pytz, python-dateutil, pyparsing, cycler, kiwisolver, matplotlib Successfully installed cycler-0.10.0 kiwisolver-1.0.1 matplotlib-2.2.0 pyparsing-2.2.0 python-dateutil-2.6.1 pytz-2018.3 

Otra opción es instalar anaconda, que viene con paquetes como: Matplotlib, numpy y pandas.

https://anaconda.org