Trucs pour LaTeX & R

Les packages indispensables

lundi 16 octobre 2017 par Philippe MICHEL

Le minimum à avoir pour un texte comportant des statistiques, c’est à dire des tableaux avec des chiffres, un peu de mathématiques, des dessins et de la couleur.

Mon préambule habituel
Pour exemple

Reportez-vous aux divers modes d’emploi, je ne donne ici que des exemples d’usages.

TeX existe depuis 1977, LaTeX depuis 1984 et contrairement à ce que pensent beaucoup d’utilisateurs, ils ont évolué ! Donc nombre de packages sont obsolètes. Et certaines habitudes de travail aussi. D’ailleurs le fichier donné en exemple est un peu vieillot : pas de BibLaTeX & toujours en pdfLaTeX

siunitx

Le package indispensable. Conçu au départ pour écrire correctement un nombre avec une unité même complexe (microlitre/kg/m2), il permet de plus de présenter correctement des tableaux de chiffres (alignés sur la virgule décimale par exemple) , de définir le séparateur décimal (la virgule en bon français), un séparateur de milliers et donc de transformer 123456.789 en 123 456,789 etc. Et il vous évitera des passages à la ligne scabreux entre un nombre et son unité. Les puissances de dix sont gérées (en 123e3 ou 123X10^3)

Le mode d’emploi est complet, l’usage un peu complexe au départ mais ça vaut le coût. La seule option indispensable est :\usepackage[output-decimal-marker={,}]{siunitx} pour écrire en français. Bien sûr beaucoup de choses sont paramétrables, à vous de faire.

Il est parfois plus simple de définir dans le préambule une fonction pour appeler une unité souvent utilisée. Par exemple pour écrire un pourcentage comme 5 % : \newcommand{\pc}[1]{\SI{#1}{\percent}} permet d’avoir dans le texte \pc{5} plus simple et plus lisible que\SI{5}{\percent} toutes les deux lignes. De la même manière vous pouvez simplifier votre écriture pour toutes les unités que vous utilisez aux quotidien. Par exemple pour mon cas personnel les mmol/L :
\newcommand{\mml}[1]{\SI{#1}{\milli\mole\per\liter}}

Son utilisation systématique pour écrire un nombre en mode texte, même sans unité, permet non seulement d’avoir les séparateurs de milliers et décimaux mais aussi d’éviter l’espace après la virgule dans un nombre. On écrira donc :\num{123456.789} pour obtenir 123 456,789 proprement.

booktabs

Le détail qui tue, la différence entre le tableau du premier traitement de texte venu et celui d’un livre bien présenté. Pas de baratin, essayez plutôt les deux codes suivants pour un tableau :

  1. \begin{tabular}{lSS}
  2.       \hline
  3.       &Janvier&Février\\
  4.       \hline
  5.       nombre&12&25\\
  6.       valeur&125&235\\
  7.       \hline
  8. \end{tabular}
  9. %
  10.  
  11. %
  12. begin{tabular}{lSS}
  13.  \toprule
  14.       &Janvier&Février\\
  15.       \midrule
  16.       nombre&12&25\\
  17.       valeur&125&235\\
  18.       \bottomrule
  19. \end{tabular}

Télécharger

Ça change tout !

geometry

Les marges définies par défaut par LaTeX sont grandes, très esthétiques mais pas toujours pratiques. Les classes KOMA font un peu mieux ou pour être précis plus proche de nos mauvaises habitudes mais parfois il faut aller régler tout ça manuellement.

Un réglage comme : \usepackage[margin=50px]{geometry} donne des marges très étroites, très moches mais parfois bien utiles. À vous de trouver le bon compromis.

rotaring

Pour tourner un texte de x degrés. Bien pratique pour les titres d’un tableau. Le plus simple est de définir une commande comme :

  1. \newcommand{\titre}[1]{\rotatebox{80}{\textbf{#1}}}

et de commencer son tableau avec

  1. \begin{tabular}{lSSSSSSS}
  2.  \toprule
  3. & {\titre{Janvier}} &  {\titre{Février}} &....
  4. \midrule

Télécharger

les accolades autour de la fonction sont indispensables avec les colonnes S définies par le package siunitx qui définit toute la colonne comme un pseudo mode mathématique donc plante au moindre espace, accent ou devant une fonction non mathématique.

array

Pour définir, entre autres, les inter-colonnes et le style de vos colonnes dans les tableaux.
Exemple : définir une colonne en gras et une en mode mathématique :

  1. \begin{tabular}{>{\tt}lc>{$}c<{$}}
  2.      Janvier&\mbox{Février}\\
  3.       2&25\\
  4.       125&235\\
  5. \end{tabular}

Télécharger

Attention ! Février ne peut pas s’écrire correctement en mode mathématique et en plus passe en italique mathématique (résultat : Fvrier). Il faut donc utilsier la fonction \mbox{}.

On peut définir de nouveaux type de colonnes dans le préambule ce qui demeure la meilleure solution. Par exemple pour définir des colonnes en mode mathématique :

  1. \newcolumntype{C}{>{$}c<{$}}

amsmath

Évitez EQNARRAY !

Cette extension définit (entre autres) les environnements align et align* qui permettent d’écrire correctement des suites d’équations bien alignées, bien numérotées ce que l’environnement eqnarray ne fait pas (voir Lars Madsen. The PracTEX Journal 2006-4 ou TUGboat Vol 33(1) ;21-25) ou ma traduction.

hyperref

Pour avoir des liens internes ou externes. C’est une fonction de base du PDF, pourquoi s’en priver. En 2018 on est habitué à cliquer sur un lien pour voir quelque chose.
Par contre il faut un peu de configuration par exemple (dans le préambule) :

  1. \hypersetup{%
  2. colorlinks=true, % liens internes en rouge, externe en bleu.
  3. pdftitle={De la pêche à la mouche},
  4. pdfauthor={Philippe MICHEL},
  5. pdfkeywords={pêche, mouche},
  6. unicode
  7. }

Télécharger

impnattypo

Pour finir un package absolument pas indispensable. Même si la typographie & surtout la microtypographie de LaTeX est excellente on peut encore faire mieux. Ce package s’efforce de suivre au mieux les règles énoncées dans leLexique des règles typographiques en usage à l’Imprimerie Nationale, la Hyène (I.N.) en abrégé. Ces règles sont très critiquées sur des points de détail par les puristes mais si vous les suivez vous ne ferez pas de grosses fautes. Ce package permet d’améliorer la gestion des veuves & des orphelines, d’éviter d’avoir plusieurs lignes qui commencent par le même mot etc. Le mode d’emploi est clair. Utile si vous écrivez un long texte.


Accueil | Contact | Plan du site | | Statistiques du site | Visiteurs : 122040 / 128687

Suivre la vie du site fr  Suivre la vie du site LaTeX   ?    |    titre sites syndiques OPML   ?

Site réalisé avec SPIP 3.2.1 + AHUNTSIC

Creative Commons License