Aller au contenu

Plusieurs graphiques en grille avec groupplots

Chargez la bibliothèque groupplots, ouvrez un environnement groupplot avec group style={group size=2 by 1}, et commencez chaque graphique par \nextgroupplot.

Deux graphiques côte à côte

La bibliothèque groupplots dispose plusieurs axes dans une grille, avec la même taille et des cadres alignés. group size=2 by 1 signifie deux colonnes et une ligne. Chaque \nextgroupplot commence la cellule suivante, dans l’ordre de lecture.

Deux graphiques sur une ligne

\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\begin{document}
\begin{tikzpicture}
  \begin{groupplot}[
      group style={group size=2 by 1, horizontal sep=1.5cm},
      width=6cm, height=4.5cm, xlabel=$t$,
    ]
    \nextgroupplot[title={Position}, ylabel=$x$]
    \addplot[blue, thick, domain=0:4, samples=40] {x^2/2};
    \nextgroupplot[title={Velocity}, ylabel=$v$]
    \addplot[red, thick, domain=0:4] {x};
  \end{groupplot}
\end{tikzpicture}
\end{document}

Les options sur groupplot s’appliquent à toutes les cellules ; celles sur \nextgroupplot uniquement à la cellule concernée.

Une grille 2 sur 2 avec étiquettes partagées

Dans une grille, les étiquettes de graduation et d’axe intérieures se répètent. xlabels at=edge bottom et ylabels at=edge left ne gardent les étiquettes d’axe que sur les graphiques extérieurs, et xticklabels at=edge bottom fait de même pour les étiquettes de graduation en x.

Quatre graphiques avec étiquettes sur les bords extérieurs

\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\begin{document}
\begin{tikzpicture}
  \begin{groupplot}[
      group style={
        group size=2 by 2,
        horizontal sep=1.2cm, vertical sep=1cm,
        xlabels at=edge bottom, ylabels at=edge left,
        xticklabels at=edge bottom,
      },
      width=5.5cm, height=4cm,
      xlabel=$t$, ylabel=$y$, domain=0:6, samples=50,
    ]
    \nextgroupplot \addplot[blue] {sin(deg(x))};
    \nextgroupplot \addplot[red] {cos(deg(x))};
    \nextgroupplot \addplot[teal] {exp(-x/2)};
    \nextgroupplot \addplot[orange] {x/6};
  \end{groupplot}
\end{tikzpicture}
\end{document}

Un graphique principal et un panneau de résidus

Les cellules peuvent avoir des hauteurs et des intervalles différents. Une disposition courante est un graphique de données avec, en dessous, un petit panneau de résidus partageant l’axe x.

Données et résidus

\documentclass{article}
\usepackage{pgfplots}
\usepgfplotslibrary{groupplots}
\begin{document}
\begin{tikzpicture}
  \begin{groupplot}[
      group style={group size=1 by 2, vertical sep=0.4cm, xticklabels at=edge bottom},
      width=8cm, xmin=0, xmax=5,
    ]
    \nextgroupplot[height=5cm, ylabel={Signal}]
    \addplot+[only marks] coordinates {(1,2.1) (2,3.9) (3,6.2) (4,7.8)};
    \addplot[red, domain=0:5] {2*x};
    \nextgroupplot[height=3cm, xlabel=$x$, ylabel={Residual}, ymin=-0.5, ymax=0.5]
    \addplot+[only marks] coordinates {(1,0.1) (2,-0.1) (3,0.2) (4,-0.2)};
    \addplot[gray, dashed, domain=0:5] {0};
  \end{groupplot}
\end{tikzpicture}
\end{document}

Clés de group style

CléEffetDans Scissor LaTeX
group size=C by Rcolonnes sur lignesFonctionne
horizontal sep, vertical sepespace entre les cadres des axesFonctionne
xlabels at=edge bottom, ylabels at=edge leftétiquettes d’axe sur les graphiques extérieurs uniquement (ou all)Fonctionne
xticklabels at=edge bottom, yticklabels at=edge leftétiquettes de graduation sur les graphiques extérieurs uniquement (ou all)Fonctionne
group name=gun nom pour désigner les cellules, comme g c1r1Acceptée ; les références aux cellules ne sont pas prises en charge

Ce qui diffère d’une installation TeX

La bibliothèque fait partie de pgfplots ; voir la section « groupplots » du manuel sur CTAN : ctan.org/pkg/pgfplots. Commencez par les graphiques avec pgfplots si vous découvrez pgfplots.

Voir aussi Courbes, Axes logarithmiques et pgfplots.

Questions et réponses

Comment créer des sous-graphiques en LaTeX ?

Utilisez la bibliothèque groupplots de pgfplots : \usepgfplotslibrary{groupplots}, puis \begin{groupplot}[group style={group size=2 by 2}] et un \nextgroupplot par graphique.

Comment partager les étiquettes d’axe dans un groupe de graphiques ?

Ajoutez xlabels at=edge bottom et ylabels at=edge left à group style, et définissez xlabel et ylabel sur le groupplot.

Deux graphiques peuvent-ils partager une légende ?

Chaque cellule a sa propre légende. Placez la légende dans une cellule et positionnez-la avec legend style={at={(x,y)}, anchor=...}.

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.