Что такое хороший, бэкенд по умолчанию для matplotlib

Я решил установить пользовательское matplotlibrc, и таким образом я должен выбрать бэкенд для matplotlib. Каков лучший с точки зрения не необходимости установить другие дополнительные пакеты?

Я склонен использовать matplotlib через ipython --pylab, таким образом, я хочу интерактивные графики оконные (когда я не делаю я могу переключиться на Agg).

Я попробовал WXAgg, но это требует (достаточно разумно) WX.

5
задан 9 December 2018 в 01:55

3 ответа

Оба Agg и TkAgg не требуйте никаких зависимостей вне стандартной библиотеки Python.

У меня были некоторые проблемы с TkAgg и многопоточность, поэтому если только необходимо сохранить в файлы (и нет plt.show()), я рекомендовал бы использовать Agg вместо этого (просто заменяют его где TkAgg появляется ниже).

Любой добавляет следующую строку к Вашему ~/.config/matplotlib/matplotlibrc:

backend: TkAgg

Или следующие строки в Ваш файл Python:

import matplotlib
matplotlib.use('TkAgg') # MUST BE CALLED BEFORE IMPORTING plt
import matplotlib.pyplot as plt
6
ответ дан 23 November 2019 в 09:11

Я предпочитаю встроенные графики с matplotlib к графикам в отдельном окне, потому что он помогает видеть то, что я делаю, все хорошо настраивание Python кодирует.

Python IDE для ученых (spyder) может сделать встроенное графическое изображение. Для испытания этой функции открывают терминал и тип:

sudo apt install python2.7 python-matplotlib spyder ipython  

После того, как ipython запрашивают в консоли IPython скопировать/вставить ниже кода и нажатия клавишу Enter выполнять его.

import matplotlib.pyplot as plt   
x, y = [-1, 12], [1, 4]  
plt.plot(x, y, marker = 'o')  

enter image description here

Текстовый редактор Atom с Водородным пакетом для установленного Atom может также сделать встроенное графическое изображение. Я нахожу интерфейс Atom более сложным для конфигурирования, чем Spyder, в котором встроенное графическое изображение с matplotlib работает из поля. Я начал со встроенным графическим изображением в Atom, потому что я хотел использовать Atom для создания встроенных графиков с другими языками программирования также.

0
ответ дан 23 November 2019 в 09:11
import matplotlib
matplotlib.use('Qt5Agg')
import matplotlib.pyplot as plt
import numpy as np


x = np.linspace(0,1,100)
y = np.sin(x)

plt.plot(x,y)
plt.show()

Насколько мне известно, PyQt5 — лучший бэкэнд для Matplotlib. Это позволяет все правки даже после того, как вы запустите свою программу. Чтобы использовать его,

import matplotlib
matplotlib.use('Qt5Agg')

поставьте это перед вызовом

import matplotlib.pyplot as plt

N.B. вам нужно установить PyQt5

для установки через pip, запустите команду

pip install PyQt5
0
ответ дан 4 August 2020 в 03:05

Другие вопросы по тегам:

Похожие вопросы: