Les figures en LaTeX

À quoi sert l'environnement figure ?

L'environnement figure sert à créer des « objets flottants » : ce sont des blocs contenant du texte et/ou des images inséré en complément à la partie principale du document, mais dont la position exacte peut varier légèrement, de manière à optimiser l'occupation des pages. En pratique, figure « accroche » un numéro et une légende à une image (ou un tableau).

figure n'influe en rien sur la mise en page de ce qu'il contient ; le cas échéant, il faudra donc utiliser la commande \centering. (En fait, la meilleure solution consiste à utiliser la commande \setupfloat[figure]{margins=centering} du package floatrow et ne pas insérer \centering : vous pourrez ainsi changer d'avis en une fraction de seconde.)

\begin{figure}
  \centering
  (la figure : image, tableau, graphique, etc)

\end{figure}

L'ensemble s'appelle un « objet flottant », que LaTeX place au mieux dans la page : cela signifie que la figure n'apparaît pas forcément à l'endroit précis du texte où vous l'avez placée.

Il existe aussi l'environnement table, qui fonctionne exactement comme figure. La différence est qu'il numérote explicitement des tableaux, avec une légende du type « Tab. 1 : résultats », et non « Fig 1 : schéma ».

Mettre une légende

Pour donner une légende à une figure, on utilise la commande \caption{} à l'intérieur de l'environnement figure :

\begin{figure}

(...)

\caption{texte de la légende}
\end{figure}

La numérotation des légendes est automatique. Selon que l'on place la ligne \caption{...} avant ou après l'image elle-même, la légende apparaîtra au dessus ou au dessous. Dans le cas qui précède, la légende figurera en dessous. (Là encore, ce n'est plus vrai quand on choisit une solution propre : utiliser les packages floatrow ou caption.)

Il faut placer le tableau et la légende à l'intérieur d'un environnement figure. La numérotation des légendes est automatique.

Créer une table des figures

Deux commandes servent à générer, respectivement, une « Table des figures » (environnement figure) et une « Liste des tableaux » (environnement table), sur le modèle de \tableofcontents (avec donc au moins deux compilations) :

\listoffigures  % table des figures
\listoftables   % table des tableaux

Vous pouvez changer le noms de ces tables, s'ils ne vous conviennent pas, en utilisant ces commandes à placer dans le préambule :

\addto\captionsfrench{%
  \renewcommand{\listfigurename}{Nouveau nom}%
  \renewcommand{\listtablename}{Nouveau nom}%
}

Faire référence à une figure

On utilise le mécanisme de référencement habituel, avec \label{mot-clé} et \ref{mot-clé} (ou \pageref{mot-clé} pour le numéro de la page).

Pour référencer la figure, on place le label après la légende :

\begin{table}

(...)

\caption{Résultats pour l'année 2000}
\label{res-2000}
\end{table}

Ensuite, on s'en sert d'habitude (noter l'utilisation du tilde -- espace insécable -- pour garder les numéros près des mots qui les introduisent) :

Dans le tableau~\ref{res-2000}, page~\pageref{res-2000}, nous lisons...

Placement des figures

On peut indiquer une préférence de positionnement pour la figure, de la façon suivante :

\begin{figure}[pos]

pos indique la préférence de positionnement de la figure dans la page ; il peut avoir les valeurs suivantes :

h (here) Placer la figure dans le texte à l'endroit où l'environnement a été appelé (si l'espace disponible sur la page le permet).
t (top) Placer la figure en haut d'une page de texte.
b (bottom) Placer la figure en bas d'une page de texte.
p (page) Placer la figure sur une page séparée du reste du texte.

La commande figure crée un objet flottant, que LaTeX place à l'endroit qui lui semble le plus favorable... et qui est parfois très mal choisi. C'est en particulier le cas avec de grosses figures qui prennent plus d'une demi-page. Il faut alors utiliser le point d'exclamation (« ici ! ») pour insister ; par exemple :

\begin{figure}[!h]

Sachez que le placement des objets flottants occupe à lui tout seul un chapitre entier du LateX companion, second edition, sous le doux nom de Mastering Floats. N'hésitez pas à vous y reporter en cas de problème.

Auteurs : Émilia Robin (1998, 2000), François-Xavier Coudert (2002). Dernière modification le , par Josselin Noirel.