Exercice 38 / 100

Matplotlib - histogramme

ConsigneGénérez 1000 données normales et tracez l'histogramme

📖 Cours

Un histogramme représente la distribution d'une variable numérique : on découpe l'axe x en intervalles (bins) et on compte combien de valeurs tombent dans chacun.

La fonction plt.hist

plt.hist(data, bins=30, color='pink', edgecolor='black')

Paramètres clés

data → la liste / array des valeursbins → nombre d'intervalles (10, 20, 30, 50... à tester selon la taille)color → couleur des barresedgecolor → bordure noire pour bien voir chaque barrealpha → transparence (0 à 1)density → True : normalise pour que l'aire totale = 1 (densité de probabilité)

Plus tu as de bins, plus le détail est fin mais plus c'est bruité. Règle empirique : ~ √n bins pour n valeurs.

Un histogramme découpe en intervalles de même largeur l'écart entre la plus petite et la plus grande valeur, et compte combien de valeurs tombent dans chacun : ce compte est la hauteur de la barre
Un histogramme découpe en intervalles de même largeur l'écart entre la plus petite et la plus grande valeur, et compte combien de valeurs tombent dans chacun : ce compte est la hauteur de la barre

Générer des données aléatoires

np.random.normal(mu, sigma, n) → n tirages selon une loi normale moyenne mu, écart-type sigmanp.random.uniform(a, b, n) → uniforme entre a et bnp.random.randint(a, b, n) → entiers entre a et b-1

Exemple complet

import numpy as npimport matplotlib.pyplot as plt
data = np.random.normal(0, 1, 1000) # 1000 valeurs ~ N(0, 1)
plt.hist(data, bins=30, color='pink', edgecolor='black')plt.title('Distribution normale')plt.xlabel('Valeur')plt.ylabel('Effectif')plt.savefig('/tmp/plot.png')

Pour visualiser plusieurs distributions sur le même graphique, appelle plt.hist plusieurs fois avec alpha=0.5.

Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →