web-dev-qa-db-fra.com

La meilleure façon de dessiner un graphique à barres dans LaTeX?

Je le cherchais ici dans Stack Overflow comme dans Google, et j'ai trouvé beaucoup de packages à dessiner, mais cela semble une tâche complexe, donc je voudrais savoir quel est le package le plus approprié pour dessiner des barres et associer des données à il. Je cherchais également un exemple de code, mais je n'ai pas eu de chance.

33
Tae

Cela semble être un travail facile pour le package pgfplots . La section 4.5 du manuel contient de nombreux exemples pour commencer, tout est expliqué à partir de zéro et étape par étape. Si vous avez besoin de plus d'exemples pgfplots, la section dédiée aux tracés à TeXample pourrait être intéressante. Il n'y a pas de graphique à barres, mais il contient quelques exemples Nice (et plus élaborés) de la fonctionnalité.

En ce qui concerne un exemple de code, je pourrais copier-coller celui du manuel, mais cela n'ajouterait pas grand-chose à ce message, je crois.

Edit: lors de l'utilisation de Matlab, il est possible d'utiliser matlab2tikz . De cette façon, vous pouvez exporter vos tracés sans avoir à vous soucier du code réel. Les graphiques à barres devraient être possibles, mais je n'ai pas encore utilisé cette fonctionnalité, donc je ne connais aucune bizarrerie. Les tracés que j'ai exportés à l'aide de ce script Matlab étaient parfaits et vous obtenez la cohérence et la flexibilité que vous souhaitez :).

25
Pieter

Paquet: bchart

Exemple de code:

\documentclass[varwidth=true, border=2pt]{standalone}

\usepackage{bchart}

\begin{document}
    \begin{bchart}[step=2,max=10]
        \bcbar{3.4}
            \smallskip
        \bcbar{5.6}
            \medskip
        \bcbar{7.2}
            \bigskip
        \bcbar{9.9}
    \end{bchart}
\end{document}

Résultat:

bchart example

Paquet: pgfplots

Exemple de code:

% Source: https://tex.stackexchange.com/a/8584/5645
\documentclass[varwidth=true, border=2pt]{standalone}

\usepackage{pgfplots}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[
            symbolic x coords={a small bar, a medium bar, a large bar},
            xtick=data
          ]
            \addplot[ybar,fill=blue] coordinates {
                (a small bar,   42)
                (a medium bar,  50)
                (a large bar,   80)
            };
        \end{axis}
    \end{tikzpicture}
\end{document}

Résultat:

pgfplots

Je prévois d'ajouter quelques exemples supplémentaires à mon référentiel GitHub . Vous pourriez également être intéressé par balise tex.stackexchange.com: graphique à barres .

40
Martin Thoma

Cela peut être considéré comme un sacrilège, mais ce n'est en fait pas terrible de générer l'intrigue en utilisant matlab, Excel ou tout autre outil, et d'inclure simplement le PDF/jpg dans. Pgfplots est une option plus élégante, mais peut-être pas la plus rapide.

7
Suresh