栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

seaborn 笔记: 绘制分类数据

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

seaborn 笔记: 绘制分类数据

0 导入库
import seaborn as sns
import matplotlib.pyplot as plt
sns.set_theme(, color_codes=True)
1 scatterplot

        catplot() 中数据的默认表示。

        数据如下:

tips = sns.load_dataset("tips")
tips
1.1 默认情况
sns.catplot(x="day", y="total_bill", data=tips)

 1.2 控制抖动

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

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

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

 1.3 swamplot

        第二种防止重叠的方法使用算法沿分类轴调整点。 它可以更好地表示观察的分布,尽管它只适用于相对较小的数据集。

        这种plot被称为“beeswarm”,在 seaborn 中由 swarmplot() 绘制,或者通过在 catplot() 中设置 kind="swarm" 来绘制:

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

sns.swarmplot(x="day", y="total_bill", data=tips)

 

 1.4 添加一个维度

(catplot只支持hue,不支持size和style)

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

 1.5 横置图像

交换变量的赋值

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

1.6 改变几个catalog的顺序
sns.catplot(x="day", y="total_bill", data=tips,kind='swarm',hue='sex',
           order=['Thur','Sun','Fri','Sat'])
 

 

 2 箱式图

 2.1 基本绘图
sns.catplot(x="total_bill", y="day", data=tips,
            kind='box')

2.2. 用hue进行分类
sns.catplot(x="total_bill", y="day", data=tips,kind='box',
           hue='sex')

3 Boxen

和Box很像,但是提供了更多的信息

diamonds = sns.load_dataset("diamonds")
sns.catplot(x="color", y="price", kind="boxen",
            data=diamonds.sort_values("color"))

 4 violinplot
sns.catplot(x="total_bill", y="day",data=tips,
            kind="violin")

 4.1 hue
sns.catplot(x="total_bill", y="day",kind="violin", data=tips,
           hue='sex')

4.1.1 hue+split

如果hue是二分类的话,可以加split=True,来更好地利用空间 

sns.catplot(x="total_bill", y="day",kind="violin", data=tips,
           hue='sex',split=True)

 5 双图叠加 5.1 swam+violin
g=sns.catplot(x="total_bill", y="day",kind="violin", data=tips,split=True)
sns.swarmplot(x="total_bill", y="day", color='k',size=3,data=tips,
              ax=g.ax)

6 柱状图 6.0 数据集
titanic = sns.load_dataset("titanic")
titanic

6.1 基础柱状图 

当每个类别中有多个观察值时,将计算估计值周围的置信区间(柱状图的值是平均值)

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

6.2 hue进行分类
sns.catplot(x="sex", y="survived", kind="bar", data=titanic, 
            hue="class")
   6.3 不计算平均值,计算数量
sns.catplot(x="sex", kind="count", data=titanic, 
            hue="class")

 

sns.countplot(x="sex", data=titanic, hue="class")

7 pointplot

和柱状图想要说明的内容是类似的,不过这里用点和线表示了均值和置信区间

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

7.1 markers

设置不同hue中点的形状

sns.catplot(x="sex", y="survived", hue="class", data=titanic, kind="point",
            markers=['*','+','o'])

 

 7.2 linestyles
sns.catplot(x="sex", y="survived", hue="class", data=titanic, kind="point",
            linestyles=['-','--',':'])

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1037172.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号