Какой бэкэнд по умолчанию является хорошим для matplotlib?

Какой бэкэнд по умолчанию является хорошим для matplotlib?

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

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

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

решение1

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

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

Либо добавьте следующую строку в свой файл ~/.config/matplotlib/matplotlibrc:

backend: TkAgg

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

import matplotlib
matplotlib.use('TkAgg')
import matplotlib.pyplot as plt

решение2

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

Примечание: вам необходимо установить PyQt5.

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

pip install PyQt5

решение3

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

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

sudo apt install python2.7 python-matplotlib spyder ipython # Python 2.x in Ubuntu 18.04 and earlier 

или

sudo apt install python3 python3-matplotlib spyder3 ipython3 # Python 3.x  

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

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

введите описание изображения здесь

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

Связанный контент