用 Seaborn 做数据可视化(1)——绘图功能(2)可视化分类数据:sns.catplot()

0. 概述

可视化分类数据

上一篇相关型的绘图主要进行的是的大部分变量都是数值型变量的数据可视化。
但是对于大多数变量都是 分类(离散型) 的数据这种情况,我们使用 catplot() 函数。(与操作数值型数据的 relplot( ) 相似)

主要有以下几种:
在这里插入图片描述

注:Seaborn 中的绘图方法有类似 barplot()、boxplot() 这种简单的函数,它们绘制在特定的matplotlib轴上,这种函数被是" axes-level function ";
相对地,Seaborn 还有一类高级的函数,比如之前见到的 relplot() 以及本篇中的 catplot() ,它能将上面提到的“低级函数与 FacetGrid 相结合,构造出一种非常简明的快速绘制函数,这种函数是 “ figure-level function ”。

1. 分类散点图

import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style="ticks", color_codes=True)
tips = sns.load_dataset("tips")

1.1 catplot() 默认 kind=‘strip’

# catplot() 内置kind:stripplot()
sns.catplot(x="day", y="total_bill", data=tips);

在这里插入图片描述

  • 参数 jitter 控制抖动或完全禁用它的大小
# 参数 jitter 控制抖动或完全禁用它的大小

sns.catplot(x="day", y="total_bill", jitter=False, data=tips);

在这里插入图片描述

1.2 catplot(kind=‘swarm’)

# 另一个 kind:swarmplot(),不过仅仅在小数据集上好用
sns.catplot(x="day", y="total_bill", kind="swarm", data=tips);

在这里插入图片描述

  • 参数 hue

与关系型绘图一样,也可以通过参数 hue 来增加维度,不过目前还不支持 size 和 style
sns.catplot(x=“day”, y=“total_bill”, hue=“sex”, kind=“swarm”, data=tips);

sns.catplot(x="day", y="total_bill", hue="sex", kind="swarm", data=tips);

在这里插入图片描述

2. 类中观测值分布

2.1 catplot(kind=‘box’)

即Boxplots 箱线图。
从上到下依次:离群点、上界、上四分位数、均值、中位数、下四分位数、下界、离群点

# 参数 kind="box"
sns.catplot(x="day", y="total_bill", kind="box", data=tips);

在这里插入图片描述

  • 参数 hue
# 添加参数 hue(增加一个维度)
sns.catplot(x="day", y="total_bill", hue="smoker", kind="box", data=tips);

在这里插入图片描述

2.2 catplot(kind=“boxen”)

适合大数据

# 参数 kind="boxen" 适合大数据
diamonds = sns.load_dataset("diamonds")
sns.catplot(x="color", y="price", kind="boxen",
            data=diamonds.sort_values("color"));

在这里插入图片描述

2.3 catplot(kind=“violin”)

与 KDE 结合

# 参数 kind=“violin” :它将箱线图和核密度估计(kde: kernel density estimation)结合起来
sns.catplot(x="total_bill", y="day", hue="time",
            kind="violin", data=tips);

在这里插入图片描述

3. 类中统计评估

3.1 catplot(kind=“bar”)

titanic = sns.load_dataset("titanic")
sns.catplot(x="sex", y="survived", hue="class", kind="bar", data=titanic);

在这里插入图片描述-

3.2 catplot(kind=“count”)

# 参数 kind="count":只可视化每个分类下观测值/样本的数量而不是计算统计量(kind="count")
sns.catplot(x="deck", kind="count", palette="ch:.25", data=titanic);

在这里插入图片描述
后面暂略

可视化“宽型”数据

使用分面图进行多变量关系分析

参考:
Seaborn(sns)官方文档学习笔记(第五章 分类数据的绘制)

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值