Box plots
Fonctions :
-
plt.boxplot()
: La fonction plt.boxplot() de Matplotlib permet de créer un boxplot (ou diagramme en boîte). Ce graphique est utilisé pour visualiser la répartition statistique d’un jeu de données en montrant la médiane, les quartiles et les valeurs extrêmes (outliers). Il est particulièrement utile pour repérer les distributions asymétriques, les valeurs aberrantes et pour comparer plusieurs ensembles de données.
Importation :
import matplotlib.pyplot as plt
Attributs :
Nom Type Description x array_like ou DataFrame Les données à afficher. Peut être un tableau 1D ou 2D, ou un DataFrame pandas. notch bool, optionnel Si True, crée une boîte en "encoche" autour de la médiane pour représenter un intervalle de confiance à 95 %. vert bool, optionnel Si True, les boîtes sont verticales (par défaut). Si False, elles sont horizontales. patch_artist bool, optionnel Si True, les boîtes sont remplies avec une couleur. widths float ou array_like, optionnel Largeur des boîtes. Peut être un nombre fixe ou un tableau de valeurs pour chaque boîte. meanline bool, optionnel Si True, une ligne représentant la **moyenne** est tracée dans la boîte. showmeans bool, optionnel Si True, la moyenne est affichée sur le boxplot (lorsqu'on utilise `meanline=True`). showfliers bool, optionnel Si True, les **valeurs aberrantes** (outliers) sont affichées. flierprops dict, optionnel Propriétés pour les outliers (ex. couleur, taille). Exemple de code :
import matplotlib.pyplot as plt import numpy as np # Générer des données aléatoires data = np.random.randn(1000) # Créer un boxplot plt.boxplot(data, notch=True, vert=False, patch_artist=True, showmeans=True) # Ajouter un titre et des labels plt.title("Boxplot de la distribution des données") plt.xlabel("Valeur") plt.ylabel("Distribution") # Afficher le boxplot plt.show()
Explication du code :
La ligne
import matplotlib.pyplot as plt
importe la bibliothèque matplotlib.pyplot, renommée ici enplt
, qui est utilisée pour créer des visualisations graphiques.La ligne
import numpy as np
importe la bibliothèque NumPy, renommée ici ennp
, utilisée pour effectuer des calculs numériques efficaces.Générer des données aléatoires
La fonction
np.random.randn(1000)
génère un tableau de 1000 valeurs aléatoires suivant une distribution normale centrée réduite (moyenne 0, écart-type 1).Ces données sont stockées dans la variable
data
.Créer un boxplot
La fonction
plt.boxplot()
crée un diagramme en boîte (boxplot) permettant de visualiser la distribution d’un jeu de données.Le paramètre
notch=True
ajoute une encoche pour indiquer l’intervalle de confiance autour de la médiane.Le paramètre
vert=False
oriente le boxplot horizontalement (par défaut, il est vertical).Le paramètre
patch_artist=True
permet de remplir la boîte avec de la couleur.Le paramètre
showmeans=True
affiche la moyenne des données à l’intérieur du boxplot.Ajouter un titre et des labels
La fonction
plt.title()
ajoute un titre au graphique (ici "Boxplot de la distribution des données").plt.xlabel()
définit le label de l’axe des abscisses (ici "Valeur").plt.ylabel()
définit le label de l’axe des ordonnées (ici "Distribution").Afficher le boxplot
La fonction
plt.show()
affiche le graphique à l’écran. -
sns.boxplot()
La fonction sns.boxplot() de Seaborn permet de créer un boxplot (diagramme en boîte) similaire à celui de Matplotlib mais avec des options de personnalisation et une esthétique plus soignée par défaut. Le boxplot permet de visualiser la répartition des données, notamment la médiane, les quartiles et les valeurs aberrantes. Elle est utilisée pour analyser la distribution des données, identifier les outliers et comparer différentes catégories.
Importation :
import seaborn as sns
Attributs :
Nom Type Description x, y array_like, DataFrame, ou series pandas Les données à tracer. Si `y` est spécifié, `x` est automatiquement défini comme l'axe des catégories. hue str, optionnel Permet de séparer les données en fonction d'une autre variable pour ajouter de la couleur (comme un regroupement par catégorie). data DataFrame, optionnel Source des données à utiliser. Si non spécifié, les variables `x`, `y` doivent être des tableaux ou séries. notch bool, optionnel Si True, ajoute des encoches autour de la médiane pour indiquer un intervalle de confiance à 95 %. orient {‘v’, ‘h’}, optionnel Orientation du graphique. Par défaut, le boxplot est vertical (`v`), mais il peut aussi être horizontal (`h`). palette str ou palette, optionnel Palette de couleurs pour le boxplot. Permet de définir des couleurs spécifiques pour les catégories ou l'ensemble des boîtes. width float, optionnel Largeur des boîtes. fliersize float, optionnel Pointes de taille des outliers (valeurs aberrantes). showmeans bool, optionnel Si True, affiche la moyenne des données sur le boxplot. Exemple de code :
import seaborn as sns import matplotlib.pyplot as plt import numpy as np # Générer des données aléatoires pour deux groupes data = np.random.randn(1000) category = np.random.choice(['A', 'B'], size=1000) # Créer un boxplot avec couleur différente pour chaque catégorie sns.boxplot(x=category, y=data, hue=category, notch=True, palette='Set2', showmeans=True) # Ajouter un titre et des labels plt.title("Boxplot avec Seaborn") plt.xlabel("Catégorie") plt.ylabel("Valeur") # Afficher le graphique plt.show()
Explication du code :
La ligne
import seaborn as sns
importe la bibliothèque Seaborn, renommée ici ensns
, qui facilite la création de visualisations statistiques attractives.La ligne
import matplotlib.pyplot as plt
importe la bibliothèque matplotlib.pyplot pour afficher les graphiques.La ligne
import numpy as np
importe la bibliothèque NumPy pour la manipulation de données numériques.Générer des données aléatoires pour deux groupes
La ligne
data = np.random.randn(1000)
génère 1000 valeurs aléatoires suivant une distribution normale (moyenne 0, écart-type 1), stockées dans la variabledata
.La ligne
category = np.random.choice(['A', 'B'], size=1000)
crée un tableau de 1000 éléments, chacun étant aléatoirement choisi entre les catégories 'A' et 'B'.Créer un boxplot avec couleur différente pour chaque catégorie
La fonction
sns.boxplot()
crée un diagramme en boîte à l’aide de Seaborn.Le paramètre
x=category
indique que l’axe des abscisses correspond aux catégories 'A' et 'B'.Le paramètre
y=data
indique que l’axe des ordonnées correspond aux valeurs numériques générées.Le paramètre
hue=category
permet de colorer les boîtes en fonction des catégories (légende automatiquement générée).Le paramètre
notch=True
ajoute une encoche autour de la médiane.Le paramètre
palette='Set2'
applique une palette de couleurs prédéfinie aux catégories.Le paramètre
showmeans=True
affiche la moyenne dans chaque boîte.Ajouter un titre et des labels
La fonction
plt.title()
ajoute un titre au graphique.plt.xlabel()
définit le label de l’axe horizontal (ici "Catégorie").plt.ylabel()
définit le label de l’axe vertical (ici "Valeur").Afficher le graphique
La fonction
plt.show()
rend visible le graphique à l’écran.