Как установить Matplotlib на OS X?

22997
bastibe

Я хочу установить matplotlib на OS X. Если возможно, используя homebrew.

Я установил Python 2.7.1 используя brew install python, я изменил свой путь, чтобы использовать его
Я установил pip с помощью brew install pip
Я установил numpy 1.5.1 с помощью pip install numpy
Я установил Scipy 0.8.0 с помощьюpip install scipy

Это где это становится волосатым. pip install matplotlibполучит неправильную версию matplotlib, которая несовместима с последней версией numpy.

Решение состоит в том, чтобы выбрать правильную версию matplotlib вручную:

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

Но эта версия не компилируется, так как не может найти заголовки freetype:

В файле из файла src / ft2font.cpp: 1:
src / ft2font.h: 14: 22: ошибка: ft2build.h: такого файла или каталога нет

Эти заголовки фактически установлены /usr/X11/includeкак часть инструментов разработчика X11.

Итак, как я могу сделать так, чтобы matplotlib использовал эти заголовки?

18
Пробовал `brew install freetype`? ismail 13 лет назад 0
Да уж. Этот пакет недоступен. Однако на github есть формула, которая его предоставляет. Не помогает, хотя. bastibe 13 лет назад 0
`brew install freetype` работал у меня с 7 ноября 2012 года drootang 11 лет назад 1

10 ответов на вопрос

18
bradley.ayers

The problem is that when the C extensions are compiled, required headers files aren't in the search path, and when they're being linked, shared libraries aren't in the search path either.

The following worked for me:

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
bastibe

Ответ прост: вам нужно pkg-infoустановить программу, иначе setup.pyвы не сможете найти установленные библиотеки.

Как установить `pkg-info`? bradley.ayers 13 лет назад 1
@bradley `brew install pkg-info` bastibe 13 лет назад 0
На самом деле, я думаю, что это должен быть `pkg-config`, поэтому` brew install pkg-config`. И не забудьте также «заварить ссылку». noio 12 лет назад 7
У меня был установлен pkg-config, но он не работал. Решение bradley.ayers сработало для меня. schlamar 11 лет назад 0
Убедитесь, что файл freetype2.pc находится в расположении, которое pkg-config знает, как читать drootang 11 лет назад 0
3
David Xia

Я следовал инструкциям на этой странице . Я застрял в

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

Тогда я сделал:

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

Проверил мою установку, набрав в терминале:

python import matplotlib print matplotlib.__version__ print matplotlib.__file__ 

Я получил версию 1.1.0 (на момент написания статьи) и путь / usr / local / Cellar / ...

На сегодняшний день Matplotlib должен быть в версии 1.0.1. Я действительно написал кое-что об этом [здесь] (http://www.daskrachen.com/2011/02/inounting-pythonnumpyscipymatplotlib.html). Может быть, вы можете найти там полезную информацию. bastibe 12 лет назад 0
Извините, это опечатка. Я имел ввиду 1.1.0. David Xia 12 лет назад 0
3
Tim

В качестве альтернативы вы можете использовать MacPorts или Fink . С MacPorts это было бы

sudo port install py27-matplotlib 

который разрешает зависимости автоматически.

Лично я использовал Macports для установки python2.7 с помощью matplotlib, и, похоже, он отлично работает на 10.7. Финк находится в процессе обновления своих внутренних компонентов для работы с новой системой сборки 10.7.

Лично я предпочитаю Homebrew MacPorts или Fink, так как он опирается на системные библиотеки и более хакерский. Если вас это не волнует, возможно, использование MacPorts или Fink является самым простым решением. bastibe 12 лет назад 1
3
Zhengyang Liu

The answer is, there's no freetype library. just simply brew it:

brew install freetype 
brew install freetype -> Ошибка: нет формулы для свободного типа. Название изменилось? Tom 11 лет назад 0
`brew install freetype` также устанавливает` libpng`. LWZ 10 лет назад 1
1
llazzaro

with OS X 10.10.3 I fixed it with this commands

brew install freetype libpng pkg-config

pkg-config fixed the issue!

After reading this issue I manage to fix it

1
Sam Inverso

Same problem using macports. Fixed with:

sudo port install pkgconfig 

as noio suggested for brew above.

0
Jon Kern

Я нашел, что это работает безупречно на OS X 10.8.3 http://penandpants.com/install-python/

0
karlacio

I wrote this same reply here but I think it can be of some interest in this discussion.

I got to install matplotlib on OSX 10.10 reading https://github.com/matplotlib/matplotlib/pull/3713.
This is not a solution for pip users; just a way to install matplotlib on my mac waiting for a fix.

I downloaded sources for matplotlib 1.4.2,
changed line 960 in setupext.py as described in https://github.com/matplotlib/matplotlib/pull/3713/files :

'freetype2', 'ft2build.h', 

becames

'freetype2', 'freetype2/ft2build.h' 

and then compiled and installed with:

python setup.py build python setup.py install 
0
bastibe

These days, the easiest way is probably conda install matplotlib, using the conda package manager by continuum analytics.

Note that you can install and use conda without having to use the full Anaconda distribution. Just pip install conda, conda init, and you're good to go.