seaborn.lmplot详解

官方文档

首先我们要知道,lmplot是用来绘制回归图的。

让我们来看看他的API:

seaborn.lmplot(xydatahue=Nonecol=Nonerow=Nonepalette=Nonecol_wrap=Noneheight=5aspect=1markers='o'sharex=Truesharey=Truehue_order=Nonecol_order=Nonerow_order=Nonelegend=Truelegend_out=Truex_estimator=Nonex_bins=Nonex_ci='ci'scatter=Truefit_reg=Trueci=95n_boot=1000units=Noneseed=Noneorder=1logistic=Falselowess=Falserobust=Falselogx=Falsex_partial=Noney_partial=Nonetruncate=Truex_jitter=Noney_jitter=Nonescatter_kws=Noneline_kws=Nonesize=None)

可以看出,参数是相当的多啊。

x, y strings, optional:是data数据中,行的名字。

data DataFrame:那就是你的数据了。

我们用实例慢慢验证,本次试用的数据集是Seaborn内置的tips小费数据集:

第一步,导入相应的包,并输出数据

import seaborn as sns
tips = sns.load_dataset("tips")
print(tips.head())

输出结果:

   total_bill   tip     sex smoker  day    time  size
0       16.99  1.01  Female     No  Sun  Dinner     2
1       10.34  1.66    Male     No  Sun  Dinner     3
2       21.01  3.50    Male     No  Sun  Dinner     3
3       23.68  3.31    Male     No  Sun  Dinner     2
4       24.59  3.61  Female     No  Sun  Dinner     4

我们用一下lmplot,看看绘制出来的是什么样的图:

df = sns.lmplot(x='total_bill',y='tip',data=tips)

绘制结果:

我们可以看到,lmplot对所选择的数据集做出了一条最佳的拟合直线。

hue, col, row  strings:其实就是用于分类,我们可以看到,他把smoker所在列中,是否抽烟做了分类。

df = sns.lmplot(x="total_bill", y="tip", hue="smoker", data=tips)

order int, optional:控制进行回归的幂次(一次以上即是多项式回归)

df = sns.lmplot(x="total_bill", y="tip", hue="smoker", data=tips,order=3)

col strings:根据所指定属性在列上分类

row strings:根据所指定属性在行上分类

df = sns.lmplot(x="total_bill", y="tip",data=tips,col="day")

df = sns.lmplot(x="total_bill", y="tip",data=tips,row="sex")

df = sns.lmplot(x="total_bill", y="tip",data=tips,row="sex",col="day")

col_wrap int, optional 指定每行的列数,最多等于col参数所对应的不同类别的数量

df = sns.lmplot(x="total_bill", y="tip",data=tips,col="day",col_wrap=3)

先暂时学习到这儿,之后慢慢补充。

原文地址:https://www.cnblogs.com/peixu/p/13207161.html