nfe*_*and 20 python plot pandas seaborn
我知道seaborn.countplot有一个属性order可以设置来确定类别的顺序.但我想要做的是让类别按递减计数的顺序排列.我知道我可以通过手动计算计数(使用groupby原始数据框上的操作等)来实现这一点,但我想知道这个功能是否存在seaborn.countplot.令人惊讶的是,我无法在任何地方找到这个问题的答案.
mir*_*ulo 49
seaborn.countplot据我所知,此功能并未构建- order参数仅接受类别的字符串列表,并将排序逻辑留给用户.
value_counts()如果你有一个DataFrame,这并不难.例如,
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
sns.set(style='darkgrid')
titanic = sns.load_dataset('titanic')
sns.countplot(x = 'class',
data = titanic,
order = titanic['class'].value_counts().index)
plt.show()
Run Code Online (Sandbox Code Playgroud)
大多数情况下,seaborn 计数图并不是真正必要的。只需绘制熊猫条形图:
import seaborn as sns; sns.set(style='darkgrid')
import matplotlib.pyplot as plt
df = sns.load_dataset('titanic')
df['class'].value_counts().plot(kind="bar")
plt.show()
Run Code Online (Sandbox Code Playgroud)