Como instalar o matplotlib no OS X?

19

Quero instalar o matplotlib no OS X. Se possível, usando o homebrew.

Eu instalei o Python 2.7.1 usando brew install python, modifiquei o meu caminho para usá-lo
Instalei o pip usando brew install pip
Instalei o numpy 1.5.1 usando pip install numpy
Instalei o scipy 0.8.0 usandopip install scipy

É aqui que fica peludo. pip install matplotlibirá buscar a versão errada do matplotlib , que é incompatível com a versão recente do numpy.

A solução é buscar a versão correta do matplotlib manualmente:

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

Mas , essa versão falha ao compilar, pois não consegue encontrar os cabeçalhos de tipo livre:

No arquivo incluído em src / ft2font.cpp: 1:
src / ft2font.h: 14: 22: erro: ft2build.h: esse arquivo ou diretório não existe

Esses cabeçalhos são realmente instalados /usr/X11/includecomo parte das ferramentas de desenvolvedor do X11.

Então, como posso fazer com que o matplotlib use esses cabeçalhos?

bastibe
fonte
Tentou brew install freetype?
Ismail
Sim. Esse pacote não está disponível. No entanto, existe uma fórmula no github que a fornece. Não ajuda, no entanto.
bastibe 3/02
11
brew install freetypetrabalhou para mim a partir de
7/11/2012

Respostas:

18

O problema é que, quando as extensões C são compiladas, os arquivos de cabeçalho necessários não estão no caminho de pesquisa e, quando estão sendo vinculados, as bibliotecas compartilhadas também não estão no caminho de pesquisa.

O seguinte funcionou para mim:

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
bradley.ayers
fonte
12

A resposta simples é: você precisa ter pkg-infoinstalado ou setup.pynão poderá encontrar bibliotecas instaladas.

bastibe
fonte
11
Como se instala pkg-info?
Bradley.ayers
@bradleybrew install pkg-info
bastibe
7
Na verdade, acho que deveria ser pkg-configassim brew install pkg-config. E não se esqueça brew linkdisso também.
Noio
Eu tinha o pkg-config instalado, mas não funcionou. A solução bradley.ayers funcionou para mim.
21312 schlamar
Verifique se o arquivo freetype2.pc está em uma localização pkg-config sabe ler
drootang
3

Eu segui as instruções desta página . Fiquei preso em

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

Então eu fiz:

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

Verifiquei minha instalação digitando no terminal:

python
import matplotlib
print matplotlib.__version__
print matplotlib.__file__

Eu tenho a versão 1.1.0 (no momento em que escrevo) e o caminho / usr / local / Cellar / ...

David Xia
fonte
A partir de hoje, o Matplotlib deve estar na versão 1.0.1. Na verdade, eu escrevi algo sobre isso aqui . Talvez você possa encontrar algumas informações úteis lá.
bastibe
Desculpe, isso é um erro de digitação. Eu quis dizer 1.1.0.
David Xia
3

Em alternativa, você pode usar o MacPorts ou o Fink . Com o MacPorts, isso seria

sudo port install py27-matplotlib

que resolve as dependências automaticamente.

Pessoalmente, usei o Macports para instalar o python2.7 com o matplotlib e ele parece funcionar bem no 10.7. O Fink está no processo de atualizar seus internos para trabalhar com o novo sistema de compilação 10.7.

Tim
fonte
11
Pessoalmente, prefiro o Homebrew ao MacPorts ou Fink, uma vez que ele depende de bibliotecas do sistema e é muito mais invasível. Se você não se importa com isso, usar o MacPorts ou o Fink é provavelmente a solução mais fácil.
bastibe
3

A resposta é: não há biblioteca de tipos gratuitos. simplesmente prepare:

brew install freetype
Zhengyang Liu
fonte
brew install freetype -> Erro: nenhuma fórmula disponível para freetype. O nome mudou?
Tom
11
brew install freetypeinstala libpngtambém.
LWZ
1

com o OS X 10.10.3 Corrigi-o com este comando

brew instala freetype libpng pkg-config

O pkg-config corrigiu o problema!

Depois de ler este problema, eu consigo corrigi-lo

llazzaro
fonte
1

Mesmo problema ao usar macports. Corrigido com:

sudo port install pkgconfig

como noio sugerido para a fermentação acima.

Sam Inverso
fonte
0

Hoje em dia, a maneira mais fácil é provavelmente conda install matplotlib, usando o condagerenciador de pacotes pela análise contínua.

Observe que você pode instalar e usar condasem precisar usar a distribuição completa do Anaconda. Assim pip install conda, conda inite você está pronto para ir.

bastibe
fonte
0

Eu escrevi essa mesma resposta aqui, mas acho que pode ser de algum interesse nessa discussão.

Eu tenho que instalar o matplotlib no OSX 10.10 lendo https://github.com/matplotlib/matplotlib/pull/3713 .
Esta não é uma solução para usuários de pip; apenas uma maneira de instalar o matplotlib no meu mac, à espera de uma correção.

Fiz o download de fontes para o matplotlib 1.4.2,
alterei a linha 960 em setupext.py, conforme descrito em https://github.com/matplotlib/matplotlib/pull/3713/files :

'freetype2', 'ft2build.h',

se torna

'freetype2', 'freetype2/ft2build.h'

e depois compilado e instalado com:

python setup.py build
python setup.py install
karlacio
fonte