【Seaborn】sns.relplot() 函数:关系图(Relational Plot)(散点图、折线图)

sns.relplot() —— 关系图(Relational Plot)

seaborn.relplot()绘制数值变量之间关系的通用函数,它可以绘制 散点图(scatterplot折线图(lineplot,适用于 数据探索(EDA)


1. 语法

import seaborn as sns

sns.relplot(data=None, x=None, y=None, hue=None, size=None, style=None, kind="scatter", col=None, row=None)

主要参数

参数作用
dataDataFrame 数据集
xX 轴数值变量
yY 轴数值变量
hue按类别分色
size按类别调整点的大小
style按类别改变点的形状
kind选择 "scatter"(散点图,默认) 或 "line"(折线图)
col / row按类别生成多个子图

2. 基本示例

2.1 画散点图(默认 kind="scatter"

import seaborn as sns
import matplotlib.pyplot as plt

# 加载数据
data = sns.load_dataset("penguins")

# 绘制散点图
sns.relplot(data=data, x="flipper_length_mm", y="body_mass_g")

plt.show()

📌 说明

  • 默认绘制散点图,相当于 sns.scatterplot()
  • relplot() 适用于多子图绘制(见下方)。
    在这里插入图片描述

2.2 按类别着色(hue 参数)

sns.relplot(data=data, x="flipper_length_mm", y="body_mass_g", hue="species")

plt.show()

📌 作用

  • hue="species"不同种类企鹅用不同颜色表示
    在这里插入图片描述

2.3 按类别改变点大小(size 参数)

sns.relplot(data=data, x="flipper_length_mm", y="body_mass_g", hue="species", size="bill_length_mm")

plt.show()

📌 作用

  • size="bill_length_mm"喙长越大,点越大
    在这里插入图片描述

2.4 按类别改变点形状(style 参数)

sns.relplot(data=data, x="flipper_length_mm", y="body_mass_g", hue="species", style="sex")

plt.show()

📌 作用

  • style="sex"不同性别企鹅用不同形状表示
    在这里插入图片描述

3. 多子图(colrow

3.1 按列 (col) 拆分

sns.relplot(data=data, x="flipper_length_mm", y="body_mass_g", col="species")

plt.show()

📌 作用

  • col="species"每个物种单独绘制散点图
    在这里插入图片描述

3.2 按行 (row) 拆分

sns.relplot(data=data, x="flipper_length_mm", y="body_mass_g", row="species")

plt.show()

📌 作用

  • row="species"每个物种单独绘制散点图(纵向排列)
    在这里插入图片描述

4. 绘制折线图

4.1 kind="line"(折线图)

data = sns.load_dataset("fmri")  # fMRI 数据集

sns.relplot(data=data, x="timepoint", y="signal", kind="line")

plt.show()

📌 作用

  • kind="line"绘制折线图(等价于 sns.lineplot())。
    在这里插入图片描述

4.2 按类别绘制折线图

sns.relplot(data=data, x="timepoint", y="signal", hue="event", kind="line")

plt.show()

📌 作用

  • hue="event"不同事件(event)用不同颜色表示
    在这里插入图片描述

5. sns.relplot() vs sns.scatterplot()

sns.relplot()sns.scatterplot()
默认类型散点图散点图
支持 col/row 多子图
支持 kind="line"

6. 总结

sns.relplot() 适用于探索数值变量之间的关系,支持 散点图 & 折线图
常见参数

  • hue 按类别分色,size 按数值调整大小,style 按类别调整形状。
  • col / row 生成 多个子图,适用于 数据分类可视化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彬彬侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值