Comment réaliser des diagrammes à barres ?#

1.  Avec l’extension PGFPlots#

L’extension PGFPlots vous permet de dessiner des diagrammes à barres (ou diagrammes en bâtons) et bien d’autres encore. Basée sur TikZ, elle est très polyvalente et permet toutes sortes de représentations de données. La contrepartie de cette polyvalence est que sa documentation est volumineuse (mais très claire).

\documentclass[french]{article}
  \usepackage[T1]{fontenc}    % Encodage T1 (adapté au français)
  \usepackage{lmodern}        % Caractères plus lisibles
  \usepackage{babel}          % Réglages linguistiques (avec french)
  \pagestyle{empty}           % N'affiche pas de numéro de page
  \usepackage{pgfplots}
  \pgfplotsset{width=7cm}

\begin{document}
\begin{tikzpicture}
  \begin{axis}[
    x tick label style={/pgf/number format/1000 sep=},
    ylabel=Population,
    enlargelimits=0.15,
    legend style={
      at={(0.5,-0.15)},
      anchor=north,
      legend columns=-1
    },
    ybar=5pt,% configures `bar shift'
    bar width=9pt,
    nodes near coords,
    point meta=y *10^-7, % the displayed number
    ]
    \addplot coordinates{
      (1930,50e6) (1940,33e6)(1950,40e6) (1960,50e6) (1970,70e6)
    };

    \addplot coordinates{
      (1930,38e6) (1940,42e6)(1950,43e6) (1960,45e6) (1970,65e6)
    };
    \legend{Lointain,Proche}
  \end{axis}
\end{tikzpicture}
\end{document}

2.  Avec l’extension bchart#

Si vos besoins sont très modestes, l’extension bchart peut être suffisante. Elle s’appuie elle aussi sur TikZ. Elle a pour particularité de ne proposer que des barres horizontales.

\documentclass[french]{article}
  \usepackage[T1]{fontenc}    % Encodage T1 (adapté au français)
  \usepackage{lmodern}        % Caractères plus lisibles
  \usepackage{babel}          % Réglages linguistiques (avec french)
  \pagestyle{empty}           % N'affiche pas de numéro de page
  \usepackage{bchart}

\begin{document}
\centering
\begin{bchart}[step=20,max=100]
  \bcbar[text=Alain]{47}
  \bcbar[text=Alex]{83}
  \bcbar[text=Alice]{65}
  \bcxlabel{Production mensuelle de documents}
\end{bchart}
\end{document}

3.  Avec l’extension pstricks#

Si vous avez l’habitude d’utiliser pstricks, les extensions pst-bar et bardiag fournissent des commandes pour dessiner des diagrammes à barres.

Voici un exemple basé sur la documentation de l’extension. Notez que nous utilisons ici le moteur pour traiter cet exemple car il est directement compatible avec pstricks.

%!TEX engine=xelatex
% Un fichier de données créé par le document avec l'environnement filecontents
\begin{filecontents*}[nosearch,overwrite]{test.csv}
Alain, Alex, Alice
1.4, 2, 2.5
1, 2.7, 3.2
\end{filecontents*}

% Le document LaTeX
\documentclass[french]{article}
  \usepackage{babel}          % Réglages linguistiques (avec french)
  \pagestyle{empty}           % N'affiche pas de numéro de page
  \usepackage{pst-bar}

\begin{document}
\psset{unit=0.5in}
\centering
\begin{pspicture}(0,-0.5)(3,3)%
  \readpsbardata{\data}{test.csv}%
  \psbarchart[barstyle={red,blue}]{\data}%
\end{pspicture}
\end{document}