You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Seaborn无hue参数时为多数据集核密度图添加颜色标签

解决Seaborn多数据集KDE图添加颜色标签的问题

方法1:合并数据集后用hue参数(推荐)

这是最贴合Seaborn设计逻辑的方式,通过合并数据集并新增分组列,让hue自动处理颜色区分和图例生成:

  1. 给每个数据集添加分组标识列
  2. 合并所有数据集
  3. 单次调用kdeplot并指定hue参数
import pandas as pd
import seaborn as sns

# 为每个数据集添加分组标签
group1_df['group'] = 'Dataset 1'
group2_df['group'] = 'Dataset 2'
group3_df['group'] = 'Dataset 3'
group4_df['group'] = 'Dataset 4'

# 合并成单个数据集
combined_df = pd.concat([group1_df, group2_df, group3_df, group4_df])

# 绘制带颜色标签的KDE图
sns.kdeplot(data=combined_df, x="PEAK SPEED", hue="group")

方法2:手动指定颜色与标签,添加图例

如果不想合并数据集,可以在每次绘制时单独指定color和label,最后调用plt.legend()显示图例:

import seaborn as sns
import matplotlib.pyplot as plt

# 逐个绘制并指定颜色、标签
sns.kdeplot(data=group1_df, x="PEAK SPEED", color="red", label="Dataset 1")
sns.kdeplot(data=group2_df, x="PEAK SPEED", color="green", label="Dataset 2")
sns.kdeplot(data=group3_df, x="PEAK SPEED", color="blue", label="Dataset 3")
sns.kdeplot(data=group4_df, x="PEAK SPEED", color="orange", label="Dataset 4")

# 显示图例
plt.legend()

两种方式对比:

  • 方法1更简洁,Seaborn会自动适配配色方案,后续调整分组更方便
  • 方法2自由度更高,可精准控制每条曲线的颜色

内容的提问来源于stack exchange,提问作者bloomsdayforever

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 19:45:29