J'essaie de créer un graphique à barres dans Seaborn qui affiche les valeurs de deux variables (poids, variance) pour chaque ligne (facteur) dans mon bloc de données. Voici à quoi ressemblent mes données:
Factor Weight Variance
Growth 10% 0.15
Value 20% 0.35
Voici mon code:
fig=plt.figure(figsize=(10,10))
ax1=fig.add_subplot(221)
sns.barplot(x=df.index, y=df[['Weight', 'Variance']], ax=ax1)
Ce qui précède renvoie une erreur chaque fois que je ne peux pas déboguer. Ce que j'essaie de réaliser, c'est d'avoir un graphique, qui montre deux barres colorées pour chaque facteur; poids dans une couleur (ex: rouge) et variance dans une autre couleur (ex: bleu).
Quelqu'un a des suggestions ou des solutions de contournement potentielles?
Merci
Outre le nettoyage de vos données dans un format bien rangé, vous devez reformater les données texte (pourcentages) en types de données numériques. Comme cela n'a rien à voir avec les diagrammes à barres, je suppose que vous pouvez vous en occuper vous-même et vous concentrer sur le tracé et les structures de données à la place:
df = pandas.DataFrame({
'Factor': ['Growth', 'Value'],
'Weight': [0.10, 0.20],
'Variance': [0.15, 0.35]
})
fig, ax1 = pyplot.subplots(figsize=(10, 10))
tidy = df.melt(id_vars='Factor').rename(columns=str.title)
seaborn.barplot(x='Factor', y='Value', hue='Variable', data=tidy, ax=ax1)
seaborn.despine(fig)