如果我们不希望通过条形图这种相对“抽象”的图形来查看分类型变量的分布,我们还可以使用更为形象的分类散点图。
分类散点图
seaborn分类散点图主要有两种:
- sns.stripplot: 绘制一个散点图,其中一个变量是分类的。
- sns.swarmplot: 绘制一个具有非重叠点的分类散点图。
我们首先介绍第一个sns.stripplot()函数。
sns.stripplot()
sns.stripplot()参数设置与sns.countplot()类似。如下代码,和前一页sns.countplot()参数一模一样的前提下,我们把画图函数直接改为sns.stripplot(),有:
sns.stripplot(data=bj, x='城区', y='单价');
我们发现分类散点图相比条形图,样本点的描绘更为具体,我们甚至可以清晰看到样本点在不同区间的分布情况。
sns.swarmplot()
但是sns.stripplot()中的样本散点是有重叠的,这样会导致我们有时候会误判某些区间的分布密集度。因此,如果希望散点不重叠。可以直接把sns.stripplot()换成sns.swarmplot(),如下图:
sns.swarmplot(data=bj, x='城区', y='单价');
从上图可见,相比普通分类散点图,非重叠分类散点图可以更为准确地比较不同单价区间的分布情况。
尝试从右上角代码框输入seaborn分类散点画图函数,使得可以查看不同城区的面积分布,同时可以准确地观察到相同城区不同面积区间的数据分布情况。