繁体   English   中英

如何使用 Seaborn countplot 并排绘制多列

[英]How to plot multiple columns side by side with Seaborn countplot

我有一个Pandas DataFrame ,例如:

pd.DataFrame({
    "A": [165,166,920,920,920,165,162,162,166,165,755,469],
    "B": [1920,868,470,470,698,945,1670,575,701,1920,1920,470],
    "C": [1670,461,461,212,212,212,212,414,453,196,254,461]
})

我想要每个option A, B and Cseaborn countplot图,并排绘制每列的top 2

下面是类似的东西的图像。 我的问题是将列与图例并排放置。

类似的东西

谢谢

你能试试这个吗?

import pandas as pd
import seaborn as sns

df=pd.DataFrame({
"A": [165,166,920,920,920,165,162,162,166,165,755,469],
"B": [1920,868,470,470,698,945,1670,575,701,1920,1920,470],
"C": [1670,461,461,212,212,212,212,414,453,196,254,461]})


sns.set(style="darkgrid")
fig, ax =plt.subplots(3,1)
max_count = max([max(df[i].value_counts()) for i in df.columns])
A=sns.countplot(y=df['A'],ax=ax[0],order=df.A.value_counts().iloc[:2].index)
B=sns.countplot(y=df['B'],ax=ax[1],order=df.B.value_counts().iloc[:2].index)
C=sns.countplot(y=df['C'],ax=ax[2],order=df.C.value_counts().iloc[:2].index)
ax[0].set_xlim(0,max_count)
ax[1].set_xlim(0,max_count)
ax[2].set_xlim(0,max_count)
A.set(xticklabels=[])
B.set(xticklabels=[])

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM