微信公众号:《Python读钱》有任何问题或建议欢迎留言公众号Seaborn是一个基于matplotlib的Python可视化库。它提供了一个高级界面来绘制有吸引力的统计图形。Seaborn其实是在matplotlib的基础上进行了更高级的API封装,无需大量调整,让绘图更简单,让你的图更精致。注意:所有代码均在IPythonnotebook中实现。lmplot(回归图)lmplot用于绘制回归图。通过lmplot,我们可以直观的概览数据的内部关系。先来看看stripplot的API:seaborn.lmplot(x,y,data,hue=None,col=None,row=None,palette=None,col_wrap=None,size=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,order=1,logistic=False,lowess=False,robust=False,logx=False,x_partial=None,y_partial=None,truncate=False,x_jitter=None,y_jitter=None,scatter_kws=None,line_kws=None)可以看到lmplot的参数挺多的,说说常用的几个吧。有些参数会涉及到一些统计知识。老套路,先导入对应的包:importseabornassns%matplotlibinlinesns.set(font_scale=1.5,style="white")本次试用的数据集是Seaborn内置的tips数据集:data=sns.load_dataset("tips")data.head(5)我们先来看看lmplot长啥样。单变量线性回归拟合一条最优直线,然后进入具体参数的演示。col:根据指定属性在列上分类row:根据指定属性在行上分类sns.lmplot(x="total_bill",y="tip",data=data,row="sex",col="smoker")结合我们的数据集,看上图的横纵坐标就可以理解这两个参数的用法。col_wrap:指定每行的列数,最多等于col参数对应的不同类别数。"total_bill",y="tip",data=data,col="day",col_wrap=4)sns.lmplot(x="total_bill",y="tip",data=data,col="day",col_wrap=2)aspect:控制图的纵横比sns.lmplot(x="total_bill",y="tip",data=data,aspect=1)#长宽比等于一比一,即正方形sns.lmplot(x="total_bill",y="tip",data=data,aspect=1.5)#Lengthtowidth等于1:1.5,可以看到横轴稍微长了一点x="total_bill",y="tip",data=data,row="sex",col="smoker",sharex=False)#可以看到设置为False时,x轴的5#坐标刻度每个子图的色调不同:用于分类sns.lmplot(x="total_bill",y="tip",data=data,hue="sex",palette="husl")ci:控制回归的置信区间(学过统计学的同学应该都知道)#显示0.95的置信区间sns.lmplot(x="total_bill",y="tip",data=data,ci=95)x_jitter:随机给x-添加噪声点轴sy_jitter:在y轴上随机添加噪声点设置这两个参数不影响最终的回归线sns.lmplot(x="size",y="tip",data=data,x_jitter=False)sns.lmplot(x="size",y="tip",data=data,x_jitter=True)#可以看到上一列的数据点被随机#打乱了,但是不会影响最终的回归线顺序:控制回归的幂(大于一个为多项式回归)sns.lmplot(x="total_bill",y="tip",data=data,order=1)#单变量线性回归sns.lmplot(x="total_bill",y="tip",data=data,order=2)#最高数timesis2sns.lmplot(x="total_bill",y="tip",data=data,order=3)#最大次数为3,有些参数涉及比较深的统计知识,就不展开了在这里一一介绍。有兴趣的可以自行查看官方文档!扫描二维码关注公众号《Python读钱》,干货第一时间获取!
