[Résolu] Tabular cumul options *{n};p{lgr cm};>{\centering}

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu] Tabular cumul options *{n};p{lgr cm};>{\centering}

Messagepar pitite_floeur » Lundi 04 Décembre 2017, 21:31

Bonjour,
J'ai un souci récurrent lorsque je veux faire des tableaux, notamment des tableaux de valeurs.
Je cherche à combiner les contraintes suivantes :
* Plein de colonnes donc utilisation du *{10} pour répéter 10 fois la même colonne
* Colonnes toutes de même largeur donc utilisation du p{1cm}
* Texte centré dans les cellules donc utilisation du >{\centering}

Je n'ai pas encore de solution satisfaisante.
Voici le code que je pense devoir écrire normalement :
Code: Tout sélectionner
      \begin{tabular}{|c|*{11}{>{\centering}p{1cm}|}}
         \hline $x$ & $-8$ & $-3$ & $-2$ & $0$ & $1$ & $2$ & $3$ & $4$ & $6$ & $7$ & $12$ \\
         \hline $f(x)$ & & & & & & & & & & & \\
         \hline
      \end{tabular}


Le problème est que je reçois un message d'erreur dans ce cas.
// Pour la ligne du f(x) //
! Misplaced \noalign.\hline -> \noalign{ifnum 0='}\fi \let \hskip \vskip \let \vrule \hrule \let ... \hline
! Extra alignment tab has been changed to \cr.<template> ... \width \arrayrulewidth }\endtemplate \hline $f(x)$ &
You have given more \span or & marks than there were
in the preamble to the \halign or \valign now in progress.
So I'll assume that you meant to type \cr instead.

** (voir en fin de post)

Alors je contourne en ne mettant pas l'option \centering sur la dernière colonne :

Code: Tout sélectionner
      \begin{tabular}{|c|*{10}{>{\centering}p{1cm}|}p{1cm}|}
         \hline $x$ & $-8$ & $-3$ & $-2$ & $0$ & $1$ & $2$ & $3$ & $4$ & $6$ & $7$ & $12$ \\
         \hline $f(x)$ & & & & & & & & & & & \\
         \hline
      \end{tabular}

Mais bien sûr je ne suis pas satisfaite du résultat car mon 12 n'est pas centré...
Quelqu'un aurait-il une idée ?
Je remercie ceux qui se pencheront sur mon problème...

** Pour info mon préambule est le suivant (apparemment le message d'erreur parle du préambule non ?)
Code: Tout sélectionner
\documentclass[12pt,a4paper]{article}

\usepackage{comelv}
\usepackage[left=1.5cm,right=1.5cm,top=1.2cm,bottom=1.5cm]{geometry}
\usepackage{pstricks-add}
\usepackage{pst-eucl}
\usepackage{tkz-tab}
\usepackage{enumerate}
\usepackage{pifont}

\usepackage{setspace}
\usepackage{lastpage}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0.5pt}
\fancyfoot[RE,RO]{Page \thepage ~sur \pageref{LastPage}}
\fancyfoot[LE,LO]{1STI2D-STL -- Chap.4 : Les fonctions composées -- Activité}
Dernière édition par pitite_floeur le Mardi 05 Décembre 2017, 16:55, édité 1 fois.
pitite_floeur
Déca-utilisateur
 
Messages: 22
Inscription: Vendredi 29 Novembre 2013, 12:25
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: Tabular cumul options *{n} ; p{lgr cm} ; >{\centering}

Messagepar un bon petit » Lundi 04 Décembre 2017, 21:59

Comme la macro \centering de LaTeX redéfinit \\, il faut donc contrer cette redéfinition et écrire en faisant appel à la macro \arraybackslash du package array.
Écrivez donc
Code: Tout sélectionner
>{\centering\arraybackslah}
et chargez le package array.
un bon petit
Giga-utilisateur
 
Messages: 640
Inscription: Vendredi 12 Juin 2009, 21:35
Localisation: Chambéry
Statut actuel: Actif et salarié | Enseignant

Re: Tabular cumul options *{n} ; p{lgr cm} ; >{\centering}

Messagepar boobamane » Lundi 04 Décembre 2017, 23:21

Bonsoir,
Personnellement, j'utilise le package tablor qui permet aussi d'avoir son tableau de signe.
https://mathsp.tuxfamily.org/spip.php?article241
Voici certainement le code que tu cherches.
Code: Tout sélectionner
    \documentclass[12pt,a4paper]{article}
    \usepackage[left=1.5cm,right=1.5cm,top=1.2cm,bottom=1.5cm]{geometry}
    \usepackage{pstricks-add}
    \usepackage{pst-eucl}
    \usepackage{tkz-tab}
    \usepackage{enumerate}
    \usepackage{pifont}
    \usepackage{setspace}
    \usepackage{lastpage}
    \usepackage{fancyhdr}
    \usepackage{array}
    \pagestyle{fancy}
    \fancyhf{}
    \renewcommand{\headrulewidth}{0pt}
    \renewcommand{\footrulewidth}{0.5pt}
    \fancyfoot[RE,RO]{Page \thepage ~sur \pageref{LastPage}}
    \fancyfoot[LE,LO]{1STI2D-STL -- Chap.4 : Les fonctions composées -- Activité}
    \begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%% CODE DU TABLEAU
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{tabular}{|*{13} {>{\centering\arraybackslash}p{1 cm}|}} 
    \hline
     $x$  & $-8$  & $-3$  & $-2$  & 0  & 1  & 2  & 3  & 4  & 5  & 6  & 7 &  12\\
    \hline
     $f(x)$  &    &    &    &   &   &   &   &   &    &    &    &  \\
    \hline
\end{tabular}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%% CODE DU TABLEAU
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\end{document}
boobamane
Hecto-utilisateur
 
Messages: 50
Inscription: Dimanche 22 Janvier 2012, 13:47
Statut actuel: Actif et salarié | Enseignant

Re: Tabular cumul options *{n} ; p{lgr cm} ; >{\centering}

Messagepar balf » Mardi 05 Décembre 2017, 00:14

Vu le nombre de colonnes, le tableau débordera dans la marge, sauf à prendre une largeur de colonnes un peu moindre. Plutôt que de calculer ces largeurs, mieux vaut utiliser tabularx et des colonnes de type X, dont la largeur sera calculée automatiquement pour remplir la largeur totale prescrite. En outre, l'entrée dans le mode mathématique peut se faire au niveau du préambule du tableau, plutôt que de le répéter dans chaque cellule.

Bref, voici le code que je propose, en utilisant l'extension cellspace pour avoir des lignes moins étriquées:
Code: Tout sélectionner
  \documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[showframe]{geometry}
\usepackage{tabularx}
\usepackage{cellspace}
\setlength{\cellspacetoplimit}{4pt}
\setlength{\cellspacebottomlimit}{4pt}

\begin{document}

\noindent
\begin{tabularx}{\linewidth}{|>{$}Sr<{$}|*{11}{>{\centering\arraybackslash$}X<{$}|}}
 \hline x & -8 & -3 & -2 & 0 & 1 & 2 & 3 & 4 & 6 & 7 & 12 \\
 \hline f(x) & & & & & & & & & & & \\
 \hline
\end{tabularx}

\end{document} }

B. A.
Fichiers joints
tabular_cumul.pdf
(26.04 Kio) Téléchargé 10 fois
balf
Zetta-utilisateur
 
Messages: 3663
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: Tabular cumul options *{n} ; p{lgr cm} ; >{\centering}

Messagepar pitite_floeur » Mardi 05 Décembre 2017, 16:54

Que de bons conseils, merci à vous !
pitite_floeur
Déca-utilisateur
 
Messages: 22
Inscription: Vendredi 29 Novembre 2013, 12:25
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Ahrefs [Bot], Google [Bot], Grapeshot [Crawler] et 18 invités