美文网首页
Python 数据可视化:关系统计图和回归统计图

Python 数据可视化:关系统计图和回归统计图

作者: you的日常 | 来源:发表于2020-12-01 14:16 被阅读0次

本课将要介绍的关系图和回归图,与上一课中的分类特征统计图的不同之处在于,这两类图的目的是发现 X 和 Y 轴两个变量之间的可能关系。

2.3.1 关系统计图

如果要研究两个变量之间的可能函数关系,依据以往的经验,可以通过散点图进行探索——注意,这里所说的散点图,与上一课提到的“分类特征的散点图”是不同的。

还是看示例,来理解此处的散点图。

%matplotlib inline
import seaborn as sns
sns.set(style='ticks')
tips = sns.load_dataset("tips")
tips.head()

avatar

继续使用 tips 数据集。从结果中可以看到,特征 total_bill 和 tip 中的数值,都是浮点数(连续值),下面就分别以它们为坐标系的两个坐标轴,绘制散点图,试图找到这两个特征之间的关系——这就是“关系统计图”的目的。

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

输出结果:

enter image description here

使用 sns.relplot 函数,所得到的图示与以往绘制散点图的效果差不多,如果看看这个函数完整参数列表,就能发现惊奇。

seaborn.relplot(x=None, y=None, hue=None, size=None, style=None, data=None, row=None, col=None, col_wrap=None, row_order=None, col_order=None, palette=None, hue_order=None, hue_norm=None, sizes=None, size_order=None, size_norm=None, markers=None, dashes=None, style_order=None, legend='brief', kind='scatter', height=5, aspect=1, facet_kws=None, **kwargs)

上一课学习了 sns.catplot 函数,此处 sns.relpot 的参数与之类似,只有很小的差异。

在 sns.relplot 的参数中,除了 x, y 两个参数之外,同样也有 hue,它与以往的含义一样。

sns.relplot(x='total_bill', y='tip', hue='sex', data=tips)

输出结果:

enter image description here

以 hue='sex',在散点图中把 sex 特征所对应的数据区别开了。

此外,还有一个很熟悉的参数 kind,默认值是 'scatter',就意味着默认是绘制散点图。除了这个值之外,还可以是别的值——类似 sns.catplot 中的 kind。

  • kind='scatter',默认值,等同函数 sns.scatterplot()。
  • kind='line',等同函数 lineplot()。

对应着参数 kind 不同的值,分别也有相应专有函数的情况。仍然与 sns.catplot 类似,相对于各个专用函数,sns.relplot 的优势还是在于绘制分区坐标图。

g = sns.relplot(x="total_bill", y="tip", hue="time", 
                size="size", palette=["b", "r"], sizes=(10, 100), col="time", data=tips)

输出结果:

enter image description here

除了显示分区坐标系之外,还顺便对其他几个参数做了设置,请根据效果理解上述代码中的参数。

下面,还是按照原来的套路,通过对专有函数的介绍来进一步理解“关系统计图”的绘制。

1. sns.scatterplot

此函数的完整形式如下:

seaborn.scatterplot(x=None, y=None, hue=None, style=None, size=None, data=None, palette=None, hue_order=None, hue_norm=None, sizes=None, size_order=None, size_norm=None, markers=True, style_order=None, x_bins=None, y_bins=None, units=None, estimator=None, ci=95, n_boot=1000, alpha='auto', x_jitter=None, y_jitter=None, legend='brief', ax=None, **kwargs)

很多参数都是熟悉的了,这里不再一一解释了,下面通过举例了解其含义。

ax = sns.scatterplot(x="total_bill", y="tip", hue="day", style="time", data=tips)

输出结果:

enter image description here

从效果上看,其实通过 style='time' 又引入了一个维度,即用不同的散点形状表示 time 特征下的数据。

此外,参数 size 可以用于设置点的大小。如果将它指定为某个分类特征,那么也就相当于用散点的大小表示了该特征不同值,相当于又在坐标系中叠加了一个维度。

sns.scatterplot(x='total_bill', y='tip', hue='day', size='smoker', data=tips)

输出结果:

enter image description here

并且,参数 sizes(注意写法,是复数形式了)能够规定参数 size 中划分的不同特征的“散点”大小。

sns.scatterplot(x='total_bill', y='tip', hue='day', 
                size='smoker', sizes=(50, 150), data=tips)

输出结果:

enter image description here

了解了 sns.scatterplot 的使用方法之后,再研习 sns.relplot 的参数 kind='line' 时的等同函数 sns.lineplot。

2. sns.lineplot

用这个函数,能够根据 x 轴和 y 轴的数值,直接画出反映了两个变量关系的曲线。

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

输出结果:

相关文章

  • Python 数据可视化:关系统计图和回归统计图

    本课将要介绍的关系图和回归图,与上一课中的分类特征统计图的不同之处在于,这两类图的目的是发现 X 和 Y 轴两个变...

  • 用Python进行数据分析-01

    数据可视化基础(一) 01常用统计图 数据可视化,即将数据以图形化的形式展示出来,常用统计图: ①折线图:以折现的...

  • Seaborn简介

    Seaborn 数据集分布可视化 类别数据可视化 类别散布图 类别内数据分布 类别内统计图

  • 2016.6.5

    弹幕数据(也包括平台其他数据)的可视化,显示统计图表,用于增加互动。

  • Python数据分析:matplotlib!

    matplotlib是python中的一个数据可视化库,可以做出很多数据统计图,下面来说一说matplotlib的...

  • 数据可视化Echarts

    什么是数据可视化? 什么是数据可视化呢?为了清晰有效地传递信息,数据可视化使用统计图形、图表、信息图表和其他工具,...

  • 这个数据分析工具花样有点多,看看统计图呈现方式

    数据分析,就是各种统计图表的堆砌,用合适的统计图来表达你的数据趋势和方法,如何做出好的统计图来完美呈现分析呢,我们...

  • 使用统计函数绘制简单图形

    用matplotlib绘制一些大家比较熟悉又经常混淆的统计图形,掌握这些统计图形可以对数据可视化有一个深入理解。1...

  • Seaborn

    功能简介 计算多变量间关系 可视化类别变量的观测与统计 可视化单变量或多变量分布并与其子数据集比较 对多表统计图的...

  • python-web

    python数据统计之web显示 参考链接 csdn web模块:flask python模块生成数据统计图 fl...

网友评论

      本文标题:Python 数据可视化:关系统计图和回归统计图

      本文链接:https://www.haomeiwen.com/subject/vtlebktx.html