Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment afficher les valeurs sur Seaborn Barplot (avec exemples)



Vous pouvez utiliser la fonction suivante pour afficher les valeurs sur un barplot marin :

def show_values(axs, orient="v", space=.01):
    def _single(ax):
        if orient == "v":
            for p in ax.patches:
                _x = p.get_x() + p.get_width() / 2
                _y = p.get_y() + p.get_height() + (p.get_height()*0.01)
                value = '{:.1f}'.format(p.get_height())
                ax.text(_x, _y, value, ha="center") 
        elif orient == "h":
            for p in ax.patches:
                _x = p.get_x() + p.get_width() + float(space)
                _y = p.get_y() + p.get_height() - (p.get_height()*0.5)
                value = '{:.1f}'.format(p.get_width())
                ax.text(_x, _y, value, ha="left")

    if isinstance(axs, np.ndarray):
        for idx, ax in np.ndenumerate(axs):
            _single(ax)
    else:
        _single(axs)

Cette fonction fonctionne pour les barplots horizontaux et verticaux.

Les exemples suivants montrent comment utiliser cette fonction dans la pratique avec l’ensemble de données « conseils » Seaborn :

import seaborn as sns
import pandas as pd
import numpy as np

#load tips dataset
data = sns.load_dataset("tips")

#view first five rows
data.head()

	total_bill	tip	sex	smoker	day	time	size
0	16.99	        1.01	Female	No	Sun	Dinner	2
1	10.34	        1.66	Male	No	Sun	Dinner	3
2	21.01	        3.50	Male	No	Sun	Dinner	3
3	23.68	        3.31	Male	No	Sun	Dinner	2
4	24.59	        3.61	Female	No	Sun	Dinner	4

Exemple 1 : Afficher les valeurs sur un barplot vertical

Le code suivant montre comment afficher les valeurs sur un barplot vertical :

#create vertical barplot
p = sns.barplot(x="day", y="tip", data=data, ci=None)

#show values on barplot
show_values(p)

Exemple 2 : Afficher les valeurs sur un barplot horizontal

Le code suivant montre comment afficher les valeurs sur un barplot horizontal :

#create horizontal barplot
p = sns.barplot(x="tip", y="day", data=data, ci=None)

#show values on barplot
show_values(p, "h", space=0)

Notez que plus la valeur que vous utilisez pour l’espace est grande, plus les étiquettes seront éloignées des barres.

Par exemple, changeons l’espace de 0 à .05 :

#create horizontal barplot
p = sns.barplot(x="tip", y="day", data=data, ci=None)

#show values on barplot
show_values(p, "h", space=0.05)

Remarque : Pour modifier le nombre de décimales affichées, modifiez simplement la valeur dans cette ligne de la fonction :

value = '{:.1f}'.format(p.get_height())

Par exemple, changez-le de . 1f à .2f pour afficher deux décimales au lieu d’une.

Ressources additionnelles

Les didacticiels suivants expliquent comment exécuter d’autres fonctions courantes dans seaborn :

Comment créer un diagramme circulaire dans Seaborn
Comment créer un tracé de série chronologique dans Seaborn
Comment créer plusieurs tracés Seaborn dans une seule figure

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *