我正在尝试对两种不同类型的类别变量进行散点图绘制,每种类别变量具有三个不同的级别。现在,我在python中使用seaborn库:
sns.pairplot(x_vars = ['UTM_x'], y_vars = ['UTM_y'], data = df, hue = "Mobility_Provider", height = 5)
sns.pairplot(x_vars = ['UTM_x'], y_vars = ['UTM_y'], data = df, hue = "zone_number", height = 5)
这给了我两个独立的散点图,一个由Mobility_Provider分组,一个由zone_number分组。但是,我想知道是否有可能将这两个图组合在一起,例如不同级别的Mobility_Provider表示为不同的颜色,而不同级别的zone_number表示为情节的不同形状/标记。 非常感谢!
df的每一行都有x和y值,以及两个类别变量(“ Mobility_Provider”和“ zone_number”)
答案 0 :(得分:1)
使用seaborn的散点图可以轻松完成此操作,只需使用
hue = "Mobility_Provider",style="zone_number"
像这样
import matplotlib.pyplot as plt
import seaborn as sns; sns.set()
import pandas as pd
df = pd.DataFrame({'x':[1,2,3,4],'y':[1,2,3,4],'Mobility_Provider':[0,0,1,1],\
'zone_number':[0,1,0,1]})
sns.scatterplot(x="x", y="y",s=100,hue='Mobility_Provider',style='zone_number', data=df)
plt.show()