2010-12-08 4 views
3

Je veux créer deux tables qui ont la même largeur de colonnes. Les deux tables se composent de 6 lignes et 3 colonnes. Dans les deux tableaux, la rangée 1 et la rangée 4 sont explicatives et devraient se développer dans toutes les colonnes. Dans la première table, les lignes 2, 3, 5 et 6 doivent avoir trois colonnes de la même largeur. Dans la deuxième table, les lignes 2 et 3 doivent avoir 2 colonnes de la même largeur et les lignes 5 et 6 doivent avoir trois colonnes de la même largeur.Problème avec les tables de formatage dans LaTeX

Voilà comment je l'ai fait la première table:

\begin{table}[h] 
     \caption{Distribution of mappings for the SLA parameter $\pi$.} 
     \label{tab:distPi} \centering 
     \begin{tabular*}{0.45\textwidth}{@{\extracolsep{\fill}}|c|c|c|} 
      \hline 
       \multicolumn{3}{|c|}{\textbf{Name of the SLA parameter $\pi$}} \\ 
      \hline 
       \emph{Cost} & \emph{Charge} & \emph{Rate} \\ 
      \hline 
       15\% & 15\% & 40\% \\ 
      \hline 
      \hline 
       \multicolumn{3}{|c|}{\textbf{Unit of the SLA parameter $\pi$}} \\ 
      \hline 
       \emph{USD} & \emph{GBP} & \emph{YPI} \\ 
      \hline 
       38\% & 2\% & 40\% \\ 
      \hline 
     \end{tabular*} 
     \vspace{-0.3cm} 
    \end{table} 

et voilà comment je l'ai fait la deuxième table:

\begin{table}[h] 
     \caption{Distribution of mappings for the SLA parameter $\mu$.} 
     \label{tab:distMu} \centering 
     \begin{tabular*}{0.45\textwidth}{@{\extracolsep{\fill}}|c|c|c|c|c|c|} 
      \hline 
       \multicolumn{6}{|c|}{\textbf{Name of the SLA parameter $\mu$}} \\ 
      \hline 
       \multicolumn{3}{|c|}{\emph{MemoryConsumption}} & \multicolumn{3}{|c|}{\emph{Consumption}} \\ 
      \hline 
       \multicolumn{3}{|c|}{70\%} & \multicolumn{3}{|c|}{30\%} \\ 
      \hline 
      \hline 
       \multicolumn{6}{|c|}{\textbf{Unit of the SLA parameter $\mu$}} \\ 
      \hline 
       \multicolumn{2}{|c|}{\emph{Mbit}} & \multicolumn{2}{|c|}{\emph{Gbit}} & \multicolumn{2}{|c|}{\emph{Tbit}} \\ 
      \hline 
       \multicolumn{2}{|c|}{5\%} & \multicolumn{2}{|c|}{55\%} & \multicolumn{2}{|c|}{40\%} \\ 
      \hline 
     \end{tabular*} 
     \vspace{-0.3cm} 
    \end{table} 

Cependant, la mise en forme n'est pas bon. Malheureusement, je ne peux pas montrer la capture d'écran, parce que ma réputation est inférieure à 10.

Est-ce que quelqu'un a une idée de comment le faire mieux? La page est à deux colonnes et les tables seront dans l'une des deux colonnes. Leur largeur devrait être ca. 90% de la largeur de la colonne.

+0

Il existe une communauté pour LaTeX: http://tex.stackexchange.com/ Je voudrais migrer là-bas et demander, car ces gens connaissent BEAUCOUP plus que les personnes SO (en moyenne) à propos de TeX. – Blender

Répondre

1

La principale cause du formatage laid est la façon dont la ligne verticale droite se trouve à une certaine distance des lignes. Si vous jouez un peu avec la largeur de la table, en la déplaçant de haut en bas, vous verrez que la distance entre la ligne et les lignes dépend de l'argument donné au second argument de la déclaration \ begin {tabular *}, la largeur. Déplacez-le dans une direction et la distance devient plus grande, déplacez-le dans l'autre sens et il devient moins jusqu'à ce que les lignes s'étendent réellement au-delà de la ligne de flottaison. Vous pouvez soit jouer avec ce nombre jusqu'à ce qu'il soit placé juste, ou, vous pouvez simplement utiliser l'environnement {tabulaire}, qui ne nécessite pas un argument de largeur, au lieu de {tabulaire *}. Puisque vous n'avez pas besoin de faire flotter la table (comme en témoigne l'argument [h] location), vous ne perdez probablement rien en utilisant {tabular}.