Aller au contenu

Barres d’erreur avec pgfplots

Ajoutez error bars/.cd, y dir=both, y explicit aux options de l’\addplot et écrivez chaque erreur après son point sous la forme +- (0, error), ou lisez les erreurs dans une colonne de tableau avec y error=.

Des erreurs écrites avec les points

Les barres d’erreur s’activent pour chaque \addplot. Les clés après error bars/.cd indiquent dans quelle direction les dessiner et d’où viennent les valeurs. Avec y explicit, chaque point porte sa propre erreur après +-.

Erreurs symétriques en y depuis les coordonnées

LaTeXPréambule : \usepackage{pgfplots}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tikzpicture}
  \begin{axis}[xlabel={Length (m)}, ylabel={Period (s)}]
    \addplot+[error bars/.cd, y dir=both, y explicit]
      coordinates {
        (0.2,0.90) +- (0,0.05)
        (0.4,1.27) +- (0,0.04)
        (0.6,1.55) +- (0,0.06)
        (0.8,1.80) +- (0,0.05)
        (1.0,2.01) +- (0,0.07)
      };
  \end{axis}
\end{tikzpicture}

Dans +- (ex, ey), le premier nombre est l’erreur en x et le second l’erreur en y. Seules les directions activées sont dessinées.

Des erreurs depuis une colonne de tableau

Lorsque les données forment un tableau, nommez la colonne des erreurs avec y error=. Cela fonctionne aussi avec un fichier, par exemple table[x=t, y=v, y error=dv, col sep=comma] {data.csv}.

Erreurs en y lues dans une colonne

LaTeXPréambule : \usepackage{pgfplots}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tikzpicture}
  \begin{axis}[xlabel={Dose}, ylabel={Response}, ymin=0]
    \addplot+[only marks, error bars/.cd, y dir=both, y explicit]
      table[x=dose, y=mean, y error=sd] {
        dose mean sd
        1    2.1  0.3
        2    3.4  0.4
        4    5.0  0.6
        8    6.2  0.5
      };
  \end{axis}
\end{tikzpicture}

Erreurs unilatérales et fixes

y dir=plus ou y dir=minus ne dessine que la moitié supérieure ou inférieure. Au lieu de valeurs explicites, y fixed=0.2 donne la même erreur à chaque point, et y fixed relative=0.1 une erreur de 10 % de sa valeur.

Erreurs supérieures seules, et une erreur relative

LaTeXPréambule : \usepackage{pgfplots}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tikzpicture}
  \begin{axis}[ymin=0, legend pos=north west]
    \addplot+[error bars/.cd, y dir=plus, y fixed=0.4]
      coordinates {(1,2) (2,3) (3,3.5) (4,4.4)};
    \addplot+[error bars/.cd, y dir=both, y fixed relative=0.1]
      coordinates {(1,1) (2,1.6) (3,2.2) (4,2.5)};
    \legend{fixed $\pm 0.4$ (upper), relative 10\%}
  \end{axis}
\end{tikzpicture}
Composé par Scissor LaTeX: Erreurs supérieures seules, et une erreur relative

Des erreurs différentes au-dessus et en dessous

Écrivez += (0, up) pour l’erreur supérieure et -= (0, down) pour l’erreur inférieure.

Erreurs asymétriques

LaTeXPréambule : \usepackage{pgfplots}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tikzpicture}
  \begin{axis}[width=7cm, height=5cm, xmin=0.5, xmax=3.5]
    \addplot+[only marks, error bars/.cd, y dir=both, y explicit]
      coordinates {
        (1,2.0) += (0,0.5) -= (0,0.1)
        (2,3.0) += (0,0.2) -= (0,0.6)
        (3,2.6) += (0,0.3) -= (0,0.3)
      };
  \end{axis}
\end{tikzpicture}

Erreurs en x et en y

Activez les deux directions avec x dir et y dir. error bar style définit le style des barres.

Barres d’erreur dans les deux directions

LaTeXPréambule : \usepackage{pgfplots}Ouvrir dans l'éditeur (s’ouvre dans un nouvel onglet)
\begin{tikzpicture}
  \begin{axis}[xlabel=$x$, ylabel=$y$]
    \addplot+[only marks, mark=square*,
              error bars/.cd,
                x dir=both, x explicit,
                y dir=both, y explicit,
                error bar style={red, thick}]
      coordinates {
        (1.0,1.2) +- (0.15,0.20)
        (2.0,2.1) +- (0.20,0.15)
        (3.0,2.8) +- (0.10,0.30)
      };
  \end{axis}
\end{tikzpicture}

Bandes d’erreur avec fill between

Pour une incertitude continue, ombrez la zone entre une courbe supérieure et une courbe inférieure. Chargez la bibliothèque fillbetween, nommez les deux courbes avec name path, et remplissez l’espace entre elles.

Une bande ombrée autour d’une courbe

\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{fillbetween}
\begin{document}
\begin{tikzpicture}
  \begin{axis}[domain=0:4, samples=40, xlabel=$t$, ylabel=$y$]
    \addplot[name path=upper, draw=none] {exp(-0.5*x) + 0.1 + 0.05*x};
    \addplot[name path=lower, draw=none] {exp(-0.5*x) - 0.1 - 0.05*x};
    \addplot[blue!20] fill between[of=upper and lower];
    \addplot[blue, thick] {exp(-0.5*x)};
  \end{axis}
\end{tikzpicture}
\end{document}

Options des barres d’erreur

OptionEffetDans Scissor LaTeX
y dir=both, plus, minus, nonequelle moitié de la barre dessiner (aussi x dir)Fonctionne
y explicit, x expliciterreurs issues de +- dans les coordonnées ou d’une colonne de tableauFonctionne
y error=col, x error=col, y error index=nla colonne du tableau qui contient les erreursFonctionne
+= (ex,ey), -= (ex,ey)erreurs supérieure et inférieure séparées dans les coordonnéesFonctionne
y fixed=v, y fixed relative=rla même erreur pour chaque pointFonctionne
error bar style={..}couleur et épaisseur des barresFonctionne
error mark=.., error mark options={..}l’embout à chaque extrémitéAcceptées, mais l’embout est toujours un petit trait

Ce qui diffère d’une installation TeX

Le manuel de pgfplots décrit les barres d’erreur dans sa section qui leur est consacrée : ctan.org/pkg/pgfplots.

Voir aussi Diagrammes en barres, Nuages de points et Données depuis un CSV.

Questions et réponses

Comment ajouter des barres d’erreur dans pgfplots ?

Écrivez \addplot+[error bars/.cd, y dir=both, y explicit] coordinates {(1,2) +- (0,0.3) ...};. Le second nombre après +- est l’erreur en y.

Comment lire des barres d’erreur depuis un fichier CSV ?

Ajoutez y error=column aux options du tableau, avec y explicit dans les options des barres d’erreur : table[x=a, y=b, y error=c, col sep=comma] {file.csv}.

Les barres d’erreur peuvent-elles différer au-dessus et en dessous ?

Oui. Écrivez += (0, up) et -= (0, down) après le point au lieu de +-, comme dans (1,2) += (0,0.5) -= (0,0.1).

Chaque exemple de cette page est composé par Scissor LaTeX lors de la génération du site. Dernière mise à jour : 2026-11-07.