Ответ 1
Matplotlib поддерживает python 3.x с версии 1.2, выпущенный в январе 2013 года.
Чтобы установить его, ознакомьтесь с инструкциями по установке . В общем случае вызовите pip install matplotlib
или используйте свой предпочтительный механизм (conda
, homebrew
, установщик Windows, диспетчер системных пакетов и т.д.). В некоторых случаях вам может потребоваться установить дополнительные не-python-зависимости (libpng
и freetype
) через диспетчер системных пакетов.
Ниже приведен ответ по историческим причинам и пример установки версии разработки из github.
Текущая версия matplotlib не поддерживает python3.
Там существует ветка github для поддержки python3 в течение нескольких лет, но она не была стабильной ни на чем другом, кроме linux, до недавнего времени. Я считаю, что ветвь была недавно объединена в основной ветке.
Если вы хотите использовать matplotlib на python3, вам нужно будет создать из текущего совета https://github.com/matplotlib/matplotlib
Чтобы создать его, сделайте что-то похожее на следующее:
git clone https://github.com/matplotlib/matplotlib
cd matplotlib
python3 setup.py build
sudo python3 setup.py install
Если у вас нет установленного git, вы можете просто загрузить tarball текущего тега git: https://github.com/matplotlib/matplotlib/tarball/master
Вам нужно будет установить numpy для python3. (Установка его для python2 не устанавливает его для python3.)
В большинстве случаев это все, что вам нужно сделать. Для установки по умолчанию единственная неиспользуемая библиотека python numpy. Другие зависимости (например, libpng
, freetype
) - это системные библиотеки, и если вы можете построить matplotlib для python2, вы уже имеете их.
Если вы хотите установить нестандартную установку (например, если вы хотите использовать какие-либо из бэкэнов, не относящихся к умолчанию), вам нужно скопировать шаблон setup.cfg.default
в setup.cfg
и отредактировать его в соответствии с тем, что вы хотите. Вам, вероятно, понадобится только это, если вы планируете вставлять matplotlib в приложение gtk или qt, которое вы пишете, и в этом случае вам нужны бэкэнды gtkagg
или qtagg
, а не только по умолчанию tkagg
бэкэнд.