La saisie de tableau en LATEX n'est pas chose facile ni
agréable. Il arrive souvent qu'on dispose d'un fichier de données
que l'on souhaite représenter sous forme de tableau.
Pour faciliter cela, j'ai réalisé un petit script perl qui
permet de lire un fichier LATEX contenant une certaine syntaxe
indiquant la fichier à représenter.
Il y a quelques options pour personnaliser à la fois la lecture
et l'écriture sous forme de tableau. Vous pouvez découvrir cela en
faisant dérouler la documentation sommaire.
Supposons qu'on veuille créer un tableau avec les valeurs d'un fichier externe val.txt
.
Alors dans notre document LATEX monfichier.tex
, on insère la ligne suivante :
.t /mon/chemin/val.txt
On execute alors ptab
:
ptab monfichier.tex
Fonctionnement
Lors de l'utilisation de ptab, il se crée un fichier val.tex
contenant le code tex du tableau uniquement, puis dans le fichier maître tex, les lignes de commandes sont commentées et une ligne d'inclusion \include{val}
est rajoutée.
La notation acceptée des nombres est celle qu'accepte perl (la notation avec E pour les puissances de 10 est correctement traitée).
Exemple
On a le fichier de valeurs dat.dat
suivant :
1.001 2 3.7 4.34 5.0 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
21 22 23 24 25 26 27 28 29 30
et le fichier test.tex
suivant :
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[frenchb]{babel}
\usepackage{amsmath}
\begin{document}
Du text qui se répète... Du text qui se répète... Du text qui
se répète... Du text qui se répète... Du text qui se répète... Du
text qui se répète... Du text qui se répète... Du text qui se
répète... Du text qui se répète...
\section{Une section}
.pt formatage 2
.t /fichiers/programation/perl/dat.dat
\end{document}
On execute ptab :
$> ptab test.tex
Alors le fichier dat.tex
est créé au niveau de test.tex
:
\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|}
\hline
1.00&2.00&3.70&4.34&5.00&6.00&7.00&8.00&9.00&10.00\\hline
11.00&12.00&13.00&14.00&15.00&16.00&17.00&18.00&19.00&20.00\\hline
21.00&22.00&23.00&24.00&25.00&26.00&27.00&28.00&29.00&30.00\\hline
\end{tabular}
et le fichier test.tex
est devenu :
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[frenchb]{babel}
\usepackage{amsmath}
\begin{document}
Du text qui se répète... Du text qui se répète... Du text qui
se répète... Du text qui se répète... Du text qui se répète... Du
text qui se répète... Du text qui se répète... Du text qui se
répète... Du text qui se répète...
\section{Une section}
%@patb .pt formatage 2
%@ptab .t /fichiers/programation/perl/dat.dat
\include{dat}
\end{document}
Il reste alors à faire une compilation LATEX !
Options
De manière générale, pour définir des paramètres on utilise la ligne suivante dans le document LATEX :
.pt <les paramètres>
La définition des paramètres n'est pas valable pour le document entier, elle n'est valable que jusqu'à une prochaine définition de paramètres. Par exemple, on peut très bien faire :
//code latex//
.pt math ( )
.t /mon/chemin/dat1.dat
//code latex//
.pt tableau
.t /mon/chemin/dat2.dat
//code latex//
Modes
Il existe deux modes, tableau classique avec l'environnement tabular
, et tableau mathématiques avec l'environnement array
.
Le mode classique est le mode par défaut, il n'y a pas d'option particulière…
Remarque Pour revenir en mode tableau, on utilise la commande :
.pt tableau
Mode math
Pour se mettre en mode math :
//code latex//
.pt math ( )
.t /mon/chemin/val.txt
//code latex//
Parenthèses -- Crochets
On règle, en plus de passer en mode math, les délimiteurs. Ceci se fait après l'indication math
en rentrant le délimiteur gauche et le droit séparés par un espace. Ci-dessus, on a choisi les parenthèses, on obtiendra donc une matrice avec parenthèse.
Cette option permet de formater l'affichage des décimales des valeurs dans le tableau.
Par exemple :
//code latex//
.pt formatage 3
.pt math [ ]
.t /mon/chemin/val.txt
//code latex//
permet d'afficher les nombres avec trois chiffres après la virgule.