答案 0 :(得分:5)
默认情况下,seaborn将显示所有数字列!
因此,如果您的“色相”列(在您的情况下为“ C”列)为字符串(对象)类型,则它将在图形上不可见
例如:
import numpy as np
import pandas as pd
import seaborn as sns
data = {
'A': [*np.random.random(5)],
'B': [*np.random.random(5)],
'C': ['X', 'Y', 'X', 'X', 'Y']
}
df = pd.DataFrame(data)
sns.set(style="ticks", color_codes=True)
sns.pairplot(df, hue='C')
但是,如果将“ C”列作为数值,则必须使用“ vars”来指定要使用的列:
vars:变量名称列表,可选
要在数据中使用的变量,否则将每列与 数字数据类型。
data = {
'A': [*np.random.random(5)],
'B': [*np.random.random(5)],
'C': [*np.random.randint(1, 3, 5)]
}
df = pd.DataFrame(data)
sns.set(style="ticks", color_codes=True)
sns.pairplot(df, hue='C', vars=['A', 'B'])