2010-02-04 24 views
29

Je voudrais centrer uniquement l'en-tête, mais pas le corps des colonnes particulières d'une table. Par exemple:Centrer uniquement l'en-tête de la table LaTeX

\begin{table}[!t] 
\centering 
\caption{ 
\bf{My table}} 
\begin{tabular}{l|c|} 
... 
\end{tabular} 
\end{table} 

fera une colonne alignée à gauche, et une colonne alignée au centre. J'aimerais que les en-têtes soient centrés, mais que le corps de la table soit aligné à gauche. Si les entrées dans chaque colonne sont larges, avoir le contenu aligné à gauche ou à droite sans centrer l'en-tête semble étrange (il laisse beaucoup d'espaces dans l'en-tête). Deuxièmement, est-il un moyen de forcer une table à être sur sa propre page dans LaTeX? Ou n'importe quel chiffre d'ailleurs?

Répondre

35

Définir les rubriques à l'aide

\multicolumn{1}{c}{Heading} 

Ne hésitez pas à tenir tête et de queue | s autour du c au besoin.

+0

Le premier argument spécifie le nombre de colonnes à portée. – Svante

+0

Oui. Je supposais qu'il voulait un titre pour chaque colonne. C'est généralement le cas quand cela arrive. – dmckee

+2

Désolé, je voulais juste dire cela comme un commentaire; vous avez complètement raison. – Svante

8

Afin de mettre une table (ou tout flotteur) sur sa propre page, utilisez l'argument p pour l'emplacement:

\begin{table}[p] 
    ... 

Il apparaîtra alors à la fin du chapitre/section, ou lorsque vous émettre un \clearpage ou \cleardoublepage.

+0

Heh. J'ai raté cette partie de la question. – dmckee

0

utiliser le paquet caption

\usepackage{caption} 
\captionsetup[table]{skip=6pt}  

ou

\captionsetup[table]{aboveskip=6pt} 
\captionsetup[table]{belowskip=6pt} 

ajouter dans le préambule

\begin{table}[!t] 
\centering 
\caption{\bfseries{My table}} 
\begin{tabular}{l|c|} 
... 
\end{tabular} 
\end{table}