Як встановити matplotlib на OS X?


19

Я хочу встановити 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

Але ця версія не вдається зібрати, оскільки вона не може знайти заголовки фрітипу:

У файлі, включеному з src / ft2font.cpp: 1:
src / ft2font.h: 14: 22: помилка: ft2build.h: Немає такого файлу чи каталогу

Ці заголовки фактично встановлені /usr/X11/includeяк частина інструментів для розробників X11.

Отже, як я можу змусити matplotlib використовувати ці заголовки?


Пробували brew install freetype?
ismail

Так. Цей пакет недоступний. Однак існує формула про github, яка її забезпечує. Не допомагає, хоча.
bastibe

1
brew install freetypeпрацював для мене станом на 7 листопада 2012 року
drootang

Відповіді:


18

Проблема полягає в тому, що коли компілюються розширення C, потрібні файли заголовків не знаходяться в шляху пошуку, а коли вони пов'язані, спільні бібліотеки також не знаходяться в шляху пошуку.

Для мене працювало наступне:

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

Проста відповідь: Вам потрібно pkg-infoвстановити, інакше setup.pyви не зможете знайти встановлені бібліотеки.


1
Як установити pkg-info?
bradley.ayers

@bradleybrew install pkg-info
bastibe

7
Власне, я думаю, так і має бути pkg-config, так brew install pkg-config. І не забувайте також про brew linkце.
noio

У мене був встановлений pkg-config, але він не працював. рішення bradley.ayers працювало на мене.
schlamar

Переконайтесь, що файл freetype2.pc знаходиться в місці, яке вміє читати pkg-config
drootang

3

Я дотримувався вказівок цієї сторінки . Я застряг

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 / локальний / Підвал / ...


На сьогодні Matplotlib має бути з версією 1.0.1. Я насправді тут щось про це написав . Можливо, ви можете знайти там якусь корисну інформацію.
bastibe

Вибачте, це друкарня. Я мав на увазі 1.1.0.
Давид Ся

3

В іншому випадку ви можете використовувати MacPorts або Fink . З MacPorts це було б

sudo port install py27-matplotlib

який автоматично вирішує залежності.

Особисто я використовував Macports, щоб встановити python2.7 з matplotlib, і, здається, він працює чудово на 10.7. Fink перебуває в процесі модернізації внутрішніх служб для роботи з новою системою побудови 10.7.


1
Я особисто віддаю перевагу Homebrew перед MacPorts або Fink, оскільки він покладається на системні вкладки і є набагато більш хакерським. Якщо вас це не хвилює, використання MacPorts або Fink - це, мабуть, найпростіше рішення.
bastibe

3

Відповідь полягає в тому, що немає бібліотеки вільних типів. просто заваріть його:

brew install freetype

brew install freetype -> Помилка: недоступна формула для вільного типу. Чи змінилося ім’я?
Том

1
brew install freetypeвстановлюється libpngтеж.
LWZ

1

з ОС X 10.10.3 я зафіксував це за допомогою цих команд

варити встановити freetype libpng pkg-config

pkg-config виправлено проблему!

Прочитавши це питання, мені вдається виправити це


1

Така ж проблема з використанням макпортів. Виправлено за допомогою:

sudo port install pkgconfig

як Noio запропонував варити вище.



0

На сьогоднішній день, мабуть conda install matplotlib, найпростіший спосіб - це використання condaменеджера пакунків шляхом континуумної аналітики.

Зауважте, що ви можете встановити та використовувати condaбез необхідності використання повного дистрибутива Anaconda. Просто pip install conda, conda initі ти добре підеш.


0

Я написав цю саму відповідь тут, але думаю, що це може зацікавити цю дискусію.

Мені довелося встановити matplotlib на OSX 10.10, читаючи https://github.com/matplotlib/matplotlib/pull/3713 .
Це не є рішенням для користувачів Pip; просто спосіб встановити matplotlib на моєму Mac, чекаючи виправлення.

Я завантажив джерела для matplotlib 1.4.2,
змінив рядок 960 у setupext.py, як описано в https://github.com/matplotlib/matplotlib/pull/3713/files :

'freetype2', 'ft2build.h',

бекамес

'freetype2', 'freetype2/ft2build.h'

а потім компілюється та встановлюється за допомогою:

python setup.py build
python setup.py install
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.