我有一个如下所示的数据框:
this.arrayDrag.push(
我试图获得一个 unique_id element day-only
0 52221039 4 28
1 5212263 3 28
2 5244438 LS 27
3 4975676 4 22
4 9023691 1 24
来映射lmplot
每天出现的频率,基本上与下面的计数图相同。
element
但是,我似乎无法找到将fig = sns.countplot(x="day-only", hue="element", data=df, hue_order=["1","2","3","4","LS","EA"], palette=color_element)
的计数映射到y值的方法。我试过了
element
然后horse = df["element"].value_counts()
count_of_y = numpy.asarray(horse)
当然,用seaborn文档告诉我y必须等于我的数据框中的列,这当然没有用。我似乎无法找到一种方法来简单计算元素作为我在y轴上的度量。我也试过计算我的fig = sns.lmplot(x="day-only", y=count_of_y, hue="element", data=df)
,但这也没有用。
这感觉就像一个非常简单的问题,但我似乎无法找到解决方案!谢谢你的帮助!
答案 0 :(得分:0)
我已经意识到我的错误在哪里并解决了我的问题。我以下列方式创建了一个新的数据框:
count_of_y = df["element"].groupby(df["day-only"]).value_counts().rename("counts").reset_index()
count_of_y
这给了我三列,在正确的位置有计数。然后我就可以用这个来策划。
fig = sns.lmplot(x="day-only", y="counts", hue="element", data=count_of_y, hue_order=["1","2","3","4","LS", "EA"], palette=color_element)