Comment ajouter des barres d’erreur aux graphiques en Python



Souvent, vous souhaiterez peut-être ajouter des barres d’erreur aux graphiques en Python pour capturer l’incertitude autour des mesures ou des valeurs calculées. Heureusement, c’est facile à faire en utilisant la bibliothèque matplotlib.

Ce didacticiel explique comment ajouter des barres d’erreur aux graphiques à barres et aux graphiques linéaires en Python.

Barres d’erreur dans les graphiques à barres

Supposons que nous ayons l’ensemble de données suivant de 10 valeurs en Python :

import numpy as np
import matplotlib.pyplot as plt

#define dataset
data = [4, 6, 6, 8, 9, 14, 16, 16, 17, 20]

Pour créer un graphique à barres avec des barres d’erreur pour cet ensemble de données, nous pouvons définir la largeur des barres d’erreur comme erreur standard , qui est calculée a

Erreur type = s / √n

où:

  • s : écart type de l’échantillon
  • n : taille de l’échantillon

Le code suivant montre comment calculer l’erreur standard pour cet exemple :

#calculate standard error
std_error = np.std(data, ddof=1) / np.sqrt(len(data))

#view standard error 
std_error

1.78

Enfin, nous pouvons créer le graphique à barres en utilisant des barres d’erreur qui ont une largeur égale à l’erreur standard :

#define chart 
fig, ax = plt.subplots()

#create chart
ax.bar(x=np.arange(len(data)), #x-coordinates of bars
       height=data, #height of bars
       yerr=std_error, #error bar width
       capsize=4) #length of error bar caps

Graphique à barres avec barres d'erreur en Python

L’erreur standard s’est avérée être de 1,78 . Il s’agit de la largeur de la barre d’erreur qui s’étend dans les deux sens à partir des estimations ponctuelles sur le graphique. Par exemple, la valeur de la première barre du graphique est 4, elle comporte donc une barre d’erreur qui s’étend de :

  • Extrémité inférieure : 4 – 178 = 2,22
  • Extrémité supérieure : 4 + 1,78 = 5,78

Chaque barre d’erreur du graphique a la même largeur.

Barres d’erreur dans les graphiques linéaires

Le code suivant montre comment créer un graphique linéaire avec des barres d’erreur pour le même ensemble de données :

import numpy as np
import matplotlib.pyplot as plt

#define data
data = [4, 6, 6, 8, 9, 14, 16, 16, 17, 20]

#define x and y coordinates
x = np.arange(len(data))
y = data

#create line chart with error bars
fig, ax = plt.subplots()

ax.errorbar(x, y,
            yerr=std_error,
            capsize=4)

Graphique linéaire avec barres d'erreur en Python

Notez que l’argument yerr indique à Python de créer des barres d’erreur verticales. Nous pourrions plutôt utiliser des barres verticales horizontales en utilisant l’argument xerr :

#create line chart with horizontal error bars
fig, ax = plt.subplots()

ax.errorbar(x, y,
            xerr=std_error,
            capsize=4)

Barres d'erreur dans le graphique Python

Vous pouvez trouver plus de didacticiels Python ici .

Ajouter un commentaire

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