专栏首页数据分析与可视化数据可视化(16)-Seaborn系列 | 变量关系组图pairplot()
原创

数据可视化(16)-Seaborn系列 | 变量关系组图pairplot()

变量关系组图

函数原型

seaborn.pairplot(data, hue=None, hue_order=None, 
                 palette=None, vars=None, x_vars=None,
                 y_vars=None, kind='scatter', diag_kind='auto', 
                 markers=None, height=2.5, aspect=1,
                 dropna=True,plot_kws=None, diag_kws=None,
                 grid_kws=None, size=None)

参数解读

data: DataFrame

hue:变量名称
作用:用颜色将数据进行第二次分组

hue_order:字符串列表
作用:指定调色板中颜色变量的顺序

palette:调色板

vars:变量名列表

{x,y}_vars:变量名列表
作用:指定数据中变量分别用于图的行和列,

kind:{"scatter","reg"}
作用:指定数据之间的关系eg. kind="reg":指定数据的线性回归

diag_kind:{"auto","hist","kde"}
作用:指定对角线处子图的类型,默认值取决与是否使用hue。参考案例9和案例11

markers:标记

height:标量
作用:指定图的大小(图都是正方形的,所以只要指定height就行)

{plot,diag,grid} _kws:dicts字典
作用:指定关键字参数的字典

案例教程

import seaborn as sns
# 构建数据
iris = sns.load_dataset("iris")
"""
案例a:
如下,iris数据的字段变量为
[sepal_length,sepal_width,petal_length,petal_width,species]
值为数字的字段为[sepal_length,sepal_width,petal_length,petal_width]
"""
iris[:5]
表1
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例1:
为联合关系绘制散点图,为单变量绘制直方图

字段变量名查看案例a,
由于值为数字的字段变量有4个,故绘制的关系图为4x4
"""
sns.pairplot(iris)
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例2:
为联合关系绘制散点图,为单变量绘制核密度估计图

字段变量名查看案例a,
由于值为数字的字段变量有4个,故绘制的关系图为4x4

通过指定hue来对数据进行分组(效果通过颜色体现)
"""
sns.pairplot(iris, hue="species")
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例3:
为联合关系绘制散点图,为单变量绘制核密度估计图

字段变量名查看案例a,
由于值为数字的字段变量有4个,故绘制的关系图为4x4

通过指定hue来对数据进行分组(效果通过颜色体现),
并指定调色板palette来设置不同颜色
"""
sns.pairplot(iris, hue="species", palette="husl")
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例4:
为联合关系绘制散点图,为单变量绘制核密度估计图

字段变量名查看案例a,
由于值为数字的字段变量有4个,故绘制的关系图为4x4

通过指定hue来对数据进行分组(效果通过颜色体现),
并指定markers来设置散点图中的点形
"""
sns.pairplot(iris, hue="species", markers=["o", "s", "D"])
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例6:
为联合关系绘制散点图,为单变量绘制直方图

字段变量名查看案例a,
通过指定vars=["sepal_width", "sepal_length"]显式展示指定变量名对应的数据
"""
sns.pairplot(iris,vars=["sepal_width", "sepal_length"])
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例7:
为联合关系绘制散点图,为点变量绘制核密度估计图

字段变量名查看案例a,
通过指定vars=["sepal_width", "sepal_length"]显式展示指定变量名对应的数据

设置height指定图的大小
"""
sns.pairplot(iris, height=3,
             vars=["sepal_width", "sepal_length"])
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例8:
为联合关系绘制散点图,为单变量绘制直方图

字段变量名查看案例a,
通过指定x_vars,y_vars显式展示指定变量名对应的数据
"""
sns.pairplot(iris,
             x_vars=["sepal_width", "sepal_length"],
             y_vars=["petal_width", "petal_length"])
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例9:
为联合关系绘制散点图

通过设置diag_kind指定绘制图类型(kde核密度估计图)

字段变量名查看案例a,
"""
sns.pairplot(iris, diag_kind="kde")
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例10:
为联合关系绘制散点图,为单变量绘制直方图

通过设置kind=reg为散点图添加线性回归模型

字段变量名查看案例a,
"""
sns.pairplot(iris, kind="reg")
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
# 设置风格样式
sns.set(style="ticks", color_codes=True)
# 构建数据
iris = sns.load_dataset("iris")
"""
案例11:
为联合关系绘制散点图

通过设置diag_kind指定绘制图类型(kde核密度估计图)
设置markers来指定点形状为+
设置其他一些参数
字段变量名查看案例a,
"""
sns.pairplot(iris, diag_kind="kde", markers="+",
             plot_kws=dict(s=50, edgecolor="b", linewidth=1),
             diag_kws=dict(shade=True))
plt.show()

案例地址

案例代码已上传:Github https://github.com/Vambooo/SeabornCN

整理制作:数据分析与可视化学研社

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 数据可视化(10)-Seaborn系列 | 盒形图boxplot()

    案例代码已上传:Github https://github.com/Vambooo/SeabornCN

    数据分析可视化
  • 数据可视化(12)-Seaborn系列 | 增强箱图boxenplot()

    案例代码已上传:Github https://github.com/Vambooo/SeabornCN

    数据分析可视化
  • 数据可视化(19)-Seaborn系列 | 热力图heatmap()

    案例代码已上传:Github https://github.com/Vambooo/SeabornCN

    数据分析可视化
  • 基于 Python 的数据可视化

    来源:bea_tree 英文:kaggle 链接:blog.csdn.net/bea_tree/article/details/50757338 原文采用了...

    小莹莹
  • 数据可视化(19)-Seaborn系列 | 热力图heatmap()

    案例代码已上传:Github https://github.com/Vambooo/SeabornCN

    数据分析可视化
  • 如何先执行input (checkbox,radio)再执行函数

    遇到一个问题,当input type="checkbox"点击时,没有立即执行勾选或去勾,而是先执行函数,如下代码

    山河木马
  • python学习笔记(一)-文件操作

      fh是打开文件的handle,每一个被打开的文件都应该退出时关闭(除了handle没有赋给变量的文件,如open('filename')。

    py3study
  • 日本图像传感器技术实现突破,自动驾驶从此告别“夜盲症”

    镁客网
  • 请求服务失败问题分析过程

    本文描述在测试环境讲述客户端在测试环境请求服务端都正常,但是在线上环境客户端访问一模一样的服务器失败的问题分析过程。

    用户5521279
  • 感知器神经网络

    感知器是一种前馈人工神经网络,是人工神经网络中的一种典型结构。感知器具有分层结构,信息从输入层进入网络,逐层向前传递到输出层。根据感知器神经元变换函数、隐层数以...

    瓜大三哥

扫码关注云+社区

领取腾讯云代金券