seaborn barplot中“色调”的含义

数据挖掘 海运
2021-09-20 03:25:42

Seaborn barplot具有三个参数。

x, y, hue : 数据或向量数据中的变量名称,可选

问题

什么是色相?这似乎是要绘制的属性,但为什么它被称为“色调”,因为当我用谷歌搜索时,结果是关于颜色的?

谷歌

色调 - 维基百科

色调是颜色的主要属性之一(称为颜色外观参数),在技术上定义(在 CIECAM02 模型中)

4个回答

在 seaborn 中,该hue参数决定了数据框中的哪一列应该用于颜色编码。使用官方文档为此lmplot提供了一个示例。

import seaborn as sns; sns.set(color_codes=True)
tips = sns.load_dataset("tips")
g = sns.lmplot(x="total_bill", y="tip", data=tips)

在此处输入图像描述

添加 `hue="smoker" 告诉 seaborn 您希望对吸烟者和非吸烟者的数据点进行不同的着色。

>>> g = sns.lmplot(x="total_bill", y="tip", hue="smoker", data=tips)

在此处输入图像描述

这是一个很好的问题,但似乎没有一个答案真正回答了这个问题。

简单来说,在 HSL 颜色系统中,色相是颜色的属性之一,它决定了它看起来是什么样的颜色,而 S 和 L 表示饱和度和亮度。参考这张图:

在此处输入图像描述

因此,在 中seabornhue参数表示哪一列决定颜色的种类,即红色或绿色,而亮度或饱和度属性可能取决于其他值列。

一个指标可以有多少个不同的值?

例如,吸烟者有两个(是,否)。

我正在对我拥有的一些数据进行数据探索性分析,并且我观察到当值的数量超过 6 时,我会收到以下错误:

"IndexError: invalid index to scalar variable."

当它更少时没有错误!任何提示!

Hue 没有任何书面限制,但如果我们采用非常非常大的数字,则会显示索引错误。这是显示超过 35 个色调值且未显示任何错误的示例。

#Taken haberman 乳腺癌数据集
#Columns -> Age , year , axillary_nodes , Survival_status

import seaborn as sns  
import matplotlib.pyplot as plt
hb.head()
    
sns.set_style('dark')  
sns.FacetGrid(hb,hue='Number_of_positive_axillary_nodes_detected',height=4).map(plt.scatter,'Age_of_patient_at_time_of_operation','Number_of_positive_axillary_nodes_detected').add_legend()

显示结果的图像,已使用色调值列表