译者Lemon 责编郭芮 本文属于Seaborn的基础教程,介绍了直方图、联合分布图、矩阵图、箱形图等。通过本文可以看出,使用seaborn可以轻松的进行数据可视化。 Seaborn是一个数据可视化库,可帮助在Python中创建有趣的数据可视化。大多数数据分析需要识别趋势和建立模型,本文将帮助你开始使用Seaborn库创建数据可视化。 首先,你应该在jupyternotebook中键入以下命令。importpandasaspdPandas importnumpyasnpNumpy importmatplotlib。pyplotaspltMatplotlibrary importseabornassnsSeabornLibrary matplotlibinline sns。set() 直方图(Distplot) sns。distplot()结合直方图并绘制核密度估计图。这里bin区间大小是自动计算的。 sns。distplot(data〔variablename〕) 我们将使用以下代码在jupyternotebook中加载数据集:LoadtheDatasetinPython tipssns。loaddataset(tips) tips。head() 现在,由于我们已经加载了数据集,我们将使用totalbill变量创建第一个图。让我们从tips数据集创建totalbill变量的distplot。sns。distplot(tips〔totalbill〕,bins16,colorpurple) Binsizeiscalculatedusingsquarerootofrowcount。 现在,我们来对上述代码进行进一步描述:sns。distplot这个命令将启动distplot的初始创建;tips〔totalbill〕从tips数据集(数据框)中取出列(totalbill)。在这里,我们应该观察一下,可以使用方括号来拉取列值,并且列名应该用引号括起来(双引号单引号)都被接受。 我们推测totalbill变量本质上是倾斜的,大多数帐单值都在1020范围内。 联合分布图(Jointplot) 联合分布图(Jointplot)采用两个变量并一起创建直方图和散点图。让我们看一下jointplot的语法。 sns。jointplot(x,y,data) 让我们从tips数据集创建totalbill和tip变量的联合分布图。通常,任何餐厅的小费金额取决于总账单账单大小。代码如下:sns。jointplot(xtotalbill,ytip,datatips,colorpurple) 如上所述,散点图似乎显示总账单和小费金额之间的强相关性。在它的顶部,我们可以看到各个变量的直方图。 2。1Jointplot::kindhex 直方图的双变量类比称为hexbin图,因为它显示了六边形区间内的观察计数。此图对于相对较大的数据集最有效,也称为HexbinPlots。 sns。jointplot(x,y,data,kindhex)JointplotScatterplotandHistogram sns。jointplot(xtotalbill,ytip,datatips,kindhex, colorlightcoral)ips,kindhex,colorlightcoral) 有几种类型的值可以放在sns。jointplot中来创建不同的图。默认情况下,联合分布图显示散点图。现在,在上面的情节图中,它显示了六边形。六边形的深色表示数据点的高密度,其中较浅的颜色表示较少的点。 kind参数值可以是以下取值: kind:{scatterregresidkdehex} 下面,我们来看看kindkde的情形。 2。2Jointplot::kindkdeJointplotScatterplotandHistogram sns。jointplot(xtips〔totalbill〕,ytips〔tip〕,kindkde, colorpurple)contourplot 上面显示的图表称为轮廓图。轮廓图(有时称为水平图)是一种在二维平面上显示三维表面的方法。它绘制了y轴上的两个预测变量XY和轮廓的响应变量Z。 矩阵图(Pairplot) 矩阵图基本上绘制了变量之间的成对关系。它支持用hue来为类别变量绘图着色。 sns。pairplot(dataframe)PairplotofTips sns。pairplot(tips,huesex,paletteSet2) thiswillcolortheplotgenderwise 下面我们来了解下矩阵图的含义。对角线部分显示了具有核密度估计的distplot图或直方图,矩阵图的上部和下部显示散点图。hue使用列的类别为绘图着色。huesex设置为按不同的性别进行着色;paletteSet2Set2是颜色的一个系列。 条形图(Barplot) 条形图用于绘制分类列和数字列。它在可视化中创建了条形。让我们用性别创建一个totalbill的条形图,让我们看看哪类人支付更多。 sns。barplot(x,y,data)Barplot sns。barplot(xsex,ytotalbill,datatips) InferenceTotalBillAmountformalesismorethanFemales。 LetsPlotSmokerVsTotalBill::Thepurposeistofindoutif SmokerspaymorebillthanNonSmokers sns。barplot(xsmoker,ytotalbill,datatips) InferenceMoreBillforSmokers LetsFindIfThereismoreBillInWeekendorWeekdays sns。barplot(xday,ytotalbill,datatips) Peopletendtovisitmoreonweekends 箱形图(Boxplot) 箱形图(Boxplot)是给定数据集的五点汇总统计的直观表示,五个数字摘要包括:Minimum最小值;FirstQuartile14值;Median(SecondQuartile)中位数;ThirdQuartile34值;Maximum最大值。 此外,值得注意的一点是,为分类连续变量创建了一个箱线图,这意味着如果x轴是分类的并且y轴是连续的,则应创建箱线图或小提琴图。 让我们从tips数据集创建一个day和totalbill的箱线图。 sns。boxplot(x,y,data)Boxplot sns。boxplot(xday,ytotalbill,datatips) Addhuetosplitthebarplot。Makingitmorefancier sns。boxplot(xday,ytotalbill,datatips,huesmoker) OnFridaypeoplehavemorebilliftheyareaNonsmokervssmoker huesmoker:它为吸烟者和非吸烟者创造了一个箱线图。例如:在星期五的情况下,可以清楚地看到,与当天的吸烟者相比,非吸烟者的食物费用更多。ViolinPlots sns。violinplot(xday,ytotalbill,datatips) 小提琴图跟箱形图有些类似。他们之间的描述可以参考下面的图示内容: sns。lmplot是绘制一个在散点图中进行线性回归拟合的直线。它遵循普通的最小二乘法,线代表最佳拟合线。为了更好地理解这一点,建议进一步了解一下线性回归的相关知识。 代码如下:LMPLot sns。lmplot(xtotalbill,ytip,datatips,hueday) 上图显示了不同日期的totalbill变量的线性回归拟合,如图例中所示,这是在sns。lmplot中使用hueday获得的。 恭喜!你已完成Seaborn初学者教程。希望这篇文章能够提供有关Seaborn的基本知识,并且可以帮助你创建所有这些图。作者:Lemon,气候变化及新能源领域从业者,跨界玩Python,秉承让数据更有价值的理念,希望能透过数据感知世界。 声明:本文为作者投稿,版权归其个人所有。