![v2-e61cfb399757987f205b52e052abca91_1440w.jpg?source=172ae18b](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-e61cfb399757987f205b52e052abca91_1440w.jpg?source=172ae18b)
本文详细介绍seaborn绘制变量之间 线型回归(linear regression)曲线,涉及如下两个重要函数:
seaborn.regplot
seaborn.lmplot
本文速览
欢迎随缘关注@pythonic生物人
![v2-5c436fc78117d3f2ba663bbf5286bfce_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-5c436fc78117d3f2ba663bbf5286bfce_b.jpg)
![v2-b1cd816368c843d8f131f72e85326e6a_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-b1cd816368c843d8f131f72e85326e6a_b.jpg)
![v2-ee53026a005e58e46dbebb575018063a_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-ee53026a005e58e46dbebb575018063a_b.jpg)
目录
1、绘图数据准备
2、seaborn.regplot
regplot默认参数线型回归图
分别设置点和拟合线属性
置信区间(confidence interval)设置
拟合线延伸与坐标轴相交
拟合离散变量曲线
多项式回归( polynomial regression)拟合曲线
3、seaborn.lmplot
按变量分类拟合回归线
散点marker设置
散点调色盘
拟合线属性设置
绘制分面图
1、绘图数据准备
依旧使用鸢尾花iris数据集,详细介绍见之前文章。
#导入本帖要用到的库,声明如下:
数据集简单查看
![v2-024f726007794917ca173cdbd87bc3b8_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-024f726007794917ca173cdbd87bc3b8_b.jpg)
2、seaborn.regplot
seaborn.regplot(x, y, data=None, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, seed=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=True, dropna=True, x_jitter=None, y_jitter=None, label=None, color=None, marker='o', scatter_kws=None, line_kws=None, ax=None)
- regplot默认参数线型回归图
plt
![v2-f818230e96a1383bbda8555b73ad548d_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-f818230e96a1383bbda8555b73ad548d_b.jpg)
- 分别设置点和拟合线属性
plt
- 置信区间(confidence interval)设置
注意拟合线周围阴影面积变化
plt
![v2-51bf3bcbafb71126f3ed448852f79219_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-51bf3bcbafb71126f3ed448852f79219_b.jpg)
- 拟合线延伸与坐标轴相交
# extend the regression line to the axis limits
![v2-2fdbf977a8fd0968abd6ffb723707d1e_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-2fdbf977a8fd0968abd6ffb723707d1e_b.jpg)
- 拟合离散变量曲线
plt
![v2-4ee33b63fc5166342c065a6c53d1c3a5_b.jpg](http://img-02.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-4ee33b63fc5166342c065a6c53d1c3a5_b.jpg)
- 多项式回归( polynomial regression)拟合曲线
plt
![v2-5c436fc78117d3f2ba663bbf5286bfce_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-5c436fc78117d3f2ba663bbf5286bfce_b.jpg)
3、seaborn.lmplot
seaborn.lmplot(x, y, data, hue=None, col=None, row=None, palette=None, col_wrap=None, height=5, aspect=1, markers='o', sharex=True, sharey=True, hue_order=None, col_order=None, row_order=None, legend=True, legend_out=True, x_estimator=None, x_bins=None, x_ci='ci', scatter=True, fit_reg=True, ci=95, n_boot=1000, units=None, seed=None, order=1, logistic=False, lowess=False, robust=False, logx=False, x_partial=None, y_partial=None, truncate=True, x_jitter=None, y_jitter=None, scatter_kws=None, line_kws=None, size=None)
seaborn.lmplot结合seaborn.regplot()和FacetGrid,比seaborn.regplot() 更灵活,可绘制更个性化的图形。
- 按变量分类拟合回归线
plt
![v2-2c6cb9c744cbebb2599c930c82fb72fd_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic2.zhimg.com/v2-2c6cb9c744cbebb2599c930c82fb72fd_b.jpg)
- 散点marker设置
plt
![v2-d40e3a6a5bb2611e35fe158d55a1cc3c_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-d40e3a6a5bb2611e35fe158d55a1cc3c_b.jpg)
- 散点调色盘
plt
![v2-187abf97ee61fe5979289d40791f44e0_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-187abf97ee61fe5979289d40791f44e0_b.jpg)
- 拟合线属性设置
plt
![v2-187abf97ee61fe5979289d40791f44e0_b.jpg](http://img-03.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic1.zhimg.com/v2-187abf97ee61fe5979289d40791f44e0_b.jpg)
- 绘制分面图
plt
![v2-ee53026a005e58e46dbebb575018063a_b.jpg](http://img-01.proxy.5ce.com/view/image?&type=2&guid=2ec9c667-0030-eb11-8da9-e4434bdf6706&url=https://pic3.zhimg.com/v2-ee53026a005e58e46dbebb575018063a_b.jpg)
参考文献:
http://seaborn.pydata.org/tutorial/regression.html
欢迎随缘关注@pythonic生物人