Ich weiß, dass seaborn.countplot
das Attribut order
besitzt, mit dem die Reihenfolge der Kategorien festgelegt werden kann. Ich möchte jedoch, dass die Kategorien in absteigender Reihenfolge angeordnet werden. Ich weiß, dass ich dies durch manuelles Berechnen der Anzahl erreichen kann (mithilfe einer groupby
-Operation am ursprünglichen Datenrahmen usw.), aber ich frage mich, ob diese Funktionalität mit seaborn.countplot
vorhanden ist. Überraschenderweise kann ich nirgendwo eine Antwort auf diese Frage finden.
Diese Funktionalität ist, soweit ich weiß, nicht in seaborn.countplot
integriert. Der Parameter order
akzeptiert nur eine Liste von Zeichenfolgen für die Kategorien und überlässt dem Benutzer die Bestelllogik.
Mit value_counts()
ist dies nicht schwer, vorausgesetzt, Sie haben einen DataFrame. Zum Beispiel,
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()
Meistens ist ein Seaborn Countplot nicht wirklich notwendig. Nur Grundstück mit Pandas Bar Plot:
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()