На этом шаге мы рассмотрим параметры и примеры использования этого класса.
Конструктор класса PairGrid содержит параметры, частично совпадающие с теми, что были нами рассмотрены для функции pairplot(), к ним относятся: data, hue, hue_order, palette, hue_kws, vars, {x, y}_vars, corner, height, aspect, dropna, дополнительно есть два параметра для настройки подложки:
Для построения диаграммы, по аналогии с классом FacetGird, используется метод map(), в качестве аргумента ему передаётся функция для построения графика. PairGrid предоставляет ещё ряд функций, для управления представлением диаграмм на главной диагонали, верхней и нижней частях сетки: map_diag(), map_offdiag(), map_lower(), map_upper().
Подготовим набор данных для работы из уже загруженного ранее mpg:
mpg_mod = mpg[["mpg", "weight", "displacement", "origin"]]
Воспользуемся методом map() объекта класса PairGrid для построения диаграммы:
pg = sns.PairGrid(mpg_mod)
pg.map(plt.scatter)
Вот полный текст приложения:
import matplotlib.pyplot as plt import seaborn as sns sns.set(style="ticks") mpg = sns.load_dataset("mpg") mpg_mod = mpg[["mpg", "weight", "displacement", "origin"]] pg = sns.PairGrid(mpg_mod) pg.map(plt.scatter) plt.show()
Рис.1. Демонстрация работы с классом PairGrid
Добавим разделение по признаку origin:
import matplotlib.pyplot as plt import seaborn as sns sns.set(style="ticks") mpg = sns.load_dataset("mpg") mpg_mod = mpg[["mpg", "weight", "displacement", "origin"]] pg = sns.PairGrid(mpg_mod, hue='origin') pg.map(plt.scatter) plt.show()
Рис.2. Демонстрация работы с параметром hue класса PairGrid
Воспользуемся функциями map_diag() и map_offdiag() для задания типов диаграмм на главной диагонали и вне ее:
import matplotlib.pyplot as plt import seaborn as sns sns.set(style="ticks") mpg = sns.load_dataset("mpg") mpg_mod = mpg[["mpg", "weight", "displacement", "origin"]] pg = sns.PairGrid(mpg_mod) pg.map_diag(sns.kdeplot) pg.map_offdiag(plt.scatter) plt.show()
Рис.3. Демонстрация работы с с функциями map_diag() и map_offdiag() класса PairGrid
Вариант работы с map_diag(), map_lower() и map_upper():
import matplotlib.pyplot as plt import seaborn as sns sns.set(style="ticks") mpg = sns.load_dataset("mpg") mpg_mod = mpg[["mpg", "weight", "displacement", "origin"]] pg = sns.PairGrid(mpg_mod) pg.map_diag(plt.hist) pg.map_lower(plt.scatter) pg.map_upper(sns.kdeplot) plt.show()
Рис.4. Демонстрация работы с с функциями map_diag(), map_lower() и map_upper() класса PairGrid
На следующем шаге мы рассмотрим Joint-сетку.