На этом шаге мы рассмотрим назначение этой функции и ее параметры.
Функция lmplot() по своему назначению аналогична regplot() (см. 132 шаг "Функция regplot()") с возможностью управлять компоновкой полей с графиками на подложке. Загрузим наборы данных mpg и iris:
mpg = sns.load_dataset("mpg") iris = sns.load_dataset("iris")
Если пока оставить в стороне параметры, отвечающие на настройку подложки, то в остальном, аргументы функции lmplot() практически полностью совпадают по названию и назначению с рассмотренными для функции regplot(). К ним относятся x, y, data, order, x_bins, units, ci, x_ci, n_boot, {x,y}_jitter, {x, y}_partial, x_estimator, scatter, fit_reg, logistic, robust, logx, lowess, truncate, {scatter, line}_kws, dropna.
Параметры, отвечающие за разделение данных на группы и управление отображением диаграмм функции lmplot() совпадают с аргументами функций relplot() и catplot(), к ним относятся hue, row, col, pallete, hue_order, legend, legend_out, height, aspect. Поэтому мы не будем приводить полное их описание, ограничимся примером работы с ними.
Построим график с моделью регрессии с помощью функции lmplot(), такой же как мы могли бы получить с помощью функции regplot().
import matplotlib.pyplot as plt import seaborn as sns mpg = sns.load_dataset("mpg") iris = sns.load_dataset("iris") sns.lmplot(x="horsepower", y="displacement", data=mpg) plt.show()
Рис.1. График модели линейной регрессии, построенный с помощью lmplot()
Для разделения данных по категориальному признаку с последующим построением для каждой группы своей модели регрессии в функции lmplot() используются параметры:
За настройку цветовой схемы отвечает параметр pallete.
Построим диаграмму для набора iris с разделением по типу ириса (признак species):
import matplotlib.pyplot as plt import seaborn as sns mpg = sns.load_dataset("mpg") iris = sns.load_dataset("iris") sns.lmplot(x="sepal_width", y="petal_width", hue="species", data=iris) plt.show()
Рис.2. Демонстрация работы с параметром hue функции lmplot()
Изменим палитру:
import matplotlib.pyplot as plt import seaborn as sns mpg = sns.load_dataset("mpg") iris = sns.load_dataset("iris") sns.lmplot(x="sepal_width", y="petal_width", hue="species", palette="Dark2", data=iris) plt.show()
Рис.3. Демонстрация работы с параметром palette функции lmplot()
На следующем шаге мы закончим изучение этого вопроса.