Seaborn 分布绘图

  • 3. 分布绘图
    • 3.1 单变量分布
    • 3.2 二变量分布
      • 3.2.1 散点图
      • 3.2.2 六边形图
      • 3.2.3 jointplot其他常用参数
    • 3.3 成对绘图(pairplot)

Seaborn是基于 Matplotlib 的图形可视化库。该库提前定义好了一套自己的风格,也封装了一系列的方便的绘图函数,之前通过 matplotlib 需要很多代码才能完成的绘图,使用 seaborn 可能就是一行代码的事情。总结一句话:使用 seaborn 绘图比 matplotlib 更美观、简单。

3. 分布绘图

分布绘图分为单一变量分布,多变量分布,成对绘图。

3.1 单变量分布

单一变量主要就是通过直方图来绘制。在 seaborn 中直方图的绘制采用的是 distplot ,其中 dist 是 distribution 的简写,不是 histogram 的简写。 distplot 不仅仅可以绘制直方图,还可以绘制 KDE 曲线以及 rug 线。该函数有以下常用参数:
(1) kde(核密度曲线):这个代表是否要显示 kde 曲线,默认是显示的,如果显示 kde 曲线,那么 y 轴表示的就是概率,而不是数量。也可以设置为 False
(2) bins:代表的这个直方图显示的数量,也可以通过自己设置
(3) rug:代表是否需要显示底部的胡须下线,下面的胡须线越密集的地方,说明数据量越多。
(4) hist:设置为False不展示直方图

#开启默认样式
sns.set(color_codes=True)
the_titanic = titanic[~np.isnan(titanic['age'])]
#查看titanic数据集中年龄的分布情况
sns.distplot(the_titanic['age'],kde=False,bins=30,rug=True)

3.2 二变量分布

多变量分布图可以看出多个变量之间的分布关系。一般都是采用多个图进行表示。多变量分布图采用的函数是 jointplot

3.2.1 散点图

通过设置 kind = ‘reg’ 可以设置回归绘图和核密度曲线。

tips = pd.read_csv("dataset/tips.csv")
sns.jointplot(x="total_bill",y="tip",data=tips,kind="reg")

3.2.2 六边形图

对于一些数据量特别大的数据,用散点图不太利于观察。可以采用六边形图来绘制,也就是将之前的散点变成六边形,六边形有一个区间大小,之前这些点落在这个六边形中越多颜色越深。默认情况下,在 x 轴的区间内,可以展示 100 个六边形,所以默认情况下六边形的尺寸会比较小,如果想要展示得更大一点,那么可以设置减少六边形的个数,通过 gridsize 设置。

athletes = pd.read_csv("athlete_events.csv")
china_athletes = athletes[athletes['NOC']=='CHN']
sns.jointplot(x="Height",y="Weight",data=china_athletes,kind="hex",gridsize=50)

3.2.3 jointplot其他常用参数

  1. x,y,data:绘制图的数据
  2. kind:scatter、reg、resid、kde、hex
  3. color:绘制元素的颜色
  4. height:图的大小,图会是一个正方形
  5. ratio:主图和副图的比例,只能为一个整型
  6. space:主图和副图的间距
  7. dropna:是否需要删除 x 或者 y 值中出现了 NAN 的值
  8. marginal_kws:副图的一些属性,比如设置 bins、rug、kde等

3.3 成对绘图(pairplot)

pairplot 可以把某个数据集中某几个字段之间的关系图一次性绘制出来。默认情况下,对角线的图( x 和 y 轴的列相同)是直方图,其他地方的图是散点图,如果想要修改这两种图,可以通过 diag_kindkind 来实现,其中这两个参数可取的值为:
(1) diag_kind:auto,hist,kde
(2) kind:scatter,reg

#iris鸢尾花数据
#绘制petal_width、petal_height、sepal_width以及sepal_height之间的关系
iris = pd.read_csv("dataset/iris.csv")
#默认取所有数值列进行绘图
sns.pairplot(iris)

#vars指定字段
sns.pairplot(tips,vars=['total_bill','tip'])

#kind参数默认为散点图 diag_kind默认为直方图
sns.pairplot(iris,vars=['sepal_length','sepal_width','petal_length'],kind="reg",diag_kind="kde")

5-3 Seaborn 分布绘图相关推荐

  1. Seaborn常用绘图函数-sjs

    Seaborn常用绘图函数 介绍 主题风格 函数 参考 备注 介绍 seaborn是基于Matplotlib的Python数据可视化库.它提供了一个高级界面,用于绘制引人入胜且内容丰富的统计图形,在M ...

  2. Python学习16 ----Seaborn多变量分析绘图

    Seaborn多变量分析绘图 代码详见https://github.com/RenDong3/Python_Note 1 读取数据 2 分析绘图 parameters: x,y,hue 数据集变量 变 ...

  3. Seaborn常见绘图总结

    以前粗略的学习过Matplotlib绘图.Pandas绘图(这里是pandas的常见绘图总结),但是都未深入的去学习过,一遇到问题就翻文档,效率低下.听"他们"说matplotli ...

  4. 【Seaborn】绘图工具的魅力

    文章目录 1️⃣seaborn简介 2️⃣seaborn风格 3️⃣seaborn调色板及颜色设置 4️⃣seaborn绘图方式 1.单变量分析绘图 2.绘制双变量联合分布图 3.多变量关系分布图 1 ...

  5. seaborn分布数据可视化:直方图|密度图|散点图

    系统自带的数据表格(存放在github上https://github.com/mwaskom/seaborn-data),使用时通过sns.load_dataset('表名称')即可,结果为一个Dat ...

  6. Python seaborn.barplot绘图将纵轴设置成百分比形式

    直接上代码,重点在最后一句 import numpy as np import pandas as pd from matplotlib import ticker import seaborn as ...

  7. seaborn.jointpolt绘图坐标轴问题seaborn, xlabel,ylabel

    使用seaborn的时候,不管我怎么设置坐标轴,就是不会在图中显示 已有的设置坐标轴,都是直接引用pandas数据库里的表,可以直接设置 penguins = sns.load_dataset(&qu ...

  8. Seaborn系列(三):分布统计绘图(distribution)

    Seaborn系列目录 文章目录 1. 分布统计绘图API概述 2. displot单变量分布图(直方图.核密度.累积分布) 2.1 displot函数绘制单变量分布图 2.2 displot直方图k ...

  9. python seaborn_Python数据分析之Seaborn(回归分析绘图)

    ​ Seaborn回归分析绘图 %matplotlib inlineimport numpy as npimport pandas as pdimport matplotlib as mplimpor ...

最新文章

  1. layui上传图片接口
  2. Glibc辅助运行库 (C RunTime Library): crt0.o,crt1.o,crti.o crtn.o,crtbegin.o crtend.o
  3. JavaScript 技术篇-js只获取本节点text文本,不包含子节点
  4. 【玩转cocos2d-x之三十】点九图和输入框的使用
  5. 乾坤大挪移:SAP CRM WebClient UI 和 SAP Fiori UI 混搭并存
  6. IIS 5 与IIS 6 原理介绍
  7. Introduction to Computer Networking学习笔记(二十三):拥塞控制-TCP Tahoe
  8. mac系统如何转换python版本_Mac上如何切换python版本
  9. matlab-imresize-最近邻插值、双线性插值、双三次插值学习总结
  10. dbt-tidb 1.2.0 尝鲜
  11. 什么是ICP经营许可证?
  12. 如何改typecho主题头像_零成本搭建hexo个人博客(二)--修改主题
  13. 前端如何对视频进行截屏加标注
  14. 与CVTE的完美“邂逅”
  15. 天翼云80/8080/443端口访问不通问题
  16. 如何备份 WordPress 数据库
  17. eclipse配置python开发环境_Eclipse配置python开发环境
  18. html制作菱锥旋转,Flash 3d效果精彩实例:制作旋转的三棱锥
  19. 企业人事信息管理系统1.0
  20. 中山大学自考网校招生简章

热门文章

  1. 2017第九届中国金融云发展高峰论坛将于9月在京召开
  2. Cocos 2d-x CocoaChina开发者沙龙(上海站)现场放送!
  3. Hive 知识点小结(精简版)
  4. JS跳转链接的几种方式
  5. centos7 安装php环境
  6. 中国无菌注射药物行业市场供需与战略研究报告
  7. 题目10:打印楼梯,同时在楼梯上方打印两个笑脸
  8. Unity3d选择本地图片并加载
  9. github项目团队协作开发流程
  10. 超硬核!花33小时来造台3D打印机吧~