Allineamento verticale tabelle

  • Creatore
    Topic
  • #58569
    Up
    0
    Down
    ::


    Salve,

    mi rendo conto di chiedere a riguardo di un argomento trattato molte volte, ho provato a cercare sul forum, ma non trovo la soluzione al mio problema. Ho cercato anche nelle varie guide, ma niente…

    Devo costruire diverse tabelle, e prima di generarle stavo cercando di definire la struttura. L’idea era quella di generare delle tabelle di questo tipo:
    `
    \[
    \footnotesize
    \begin{array}{cc|cS[table-format=2.4]S[table-format=2.4]cS[table-format=2.4]|cS[table-format=2.4]S[table-format=2.4]cS[table-format=2.4]}
    \toprule
    \multirow{2}*{\textbf{N}} & \multirow{2}*{\textbf{Pairing}} & \multicolumn{5}{c}{\textbf{Ottimizzazione IAE}} & \multicolumn{5}{|c}{\textbf{Ottimizzazione ISE}} \\[1.5ex]
    \cmidrule(lr){3-7}
    \cmidrule(lr){8-12}
    & & \mathbf{PI} & {\textbf{IAE}} & {\textbf{ISE}} & \mathbf{IC} & {\textbf{Time}} & \mathbf{PI} & {\textbf{IAE}} & {\textbf{ISE}} & \mathbf{IC} & {\textbf{Time}} \\[1.5ex]
    \midrule
    2 & \text{1-1,2-2} & 0 & 55.3743 & 19.0786 & 4 & 10.1234 & 0 & 55.3743 & 19.0786 & 4 & 10.1234 \\[1.5ex]
    3 & \text{1-2} & 1 & 26.0642 & 11.2499 & 6 & 20.4534 & 1 & 26.0642 & 11.2499 & 6 & 20.4534 \\[1.5ex]
    4 & \text{2-1} & 2 & 24.1093 & 10.6655 & 8 & 30.2345 & 2 & 24.1093 & 10.6655 & 8 & 30.2345 \\[1.5ex]
    \bottomrule
    \end{array}
    \]
    `

    Ciò che non riesco a gestire è l’allineamento verticale delle celle. Ho provato ad utilizzare ‘m’ al posto di ‘c’ ma in quel modo perdo l’allineamento centrato orizzontale.

    Leggendo la guida “Arte”, ho pensato di utilizzare:
    `>{\centering\arraybackslash}m{1cm}`, ma a quanto pare non funziona neanche questo…

    Come posso fare???
    Io vorrei che ogni cella, oltre ad essere centrata orizzontalmente, lo fosse anche verticalmente. Inoltre mi piacerebbe anche che i numeri fossero allineati secondo il punto dei decimali.

    Ringrazio in anticipo chi mi vorrà aiutare.

    Saluti,
    Alessio.

Visualizzazione 3 filoni di risposte
  • Autore
    Risposte
    • #58570
      Up
      0
      Down
      ::

      Salve,

      mi rendo conto di chiedere a riguardo di un argomento trattato molte volte, ho provato a cercare sul forum, ma non trovo la soluzione al mio problema. Ho cercato anche nelle varie guide, ma niente…

      Devo costruire diverse tabelle, e prima di generarle stavo cercando di definire la struttura. L’idea era quella di generare delle tabelle di questo tipo:
      `
      \[
      \footnotesize
      \begin{array}{cc|cS[table-format=2.4]S[table-format=2.4]cS[table-format=2.4]|cS[table-format=2.4]S[table-format=2.4]cS[table-format=2.4]}
      \toprule
      \multirow{2}*{\textbf{N}} & \multirow{2}*{\textbf{Pairing}} & \multicolumn{5}{c}{\textbf{Ottimizzazione IAE}} & \multicolumn{5}{|c}{\textbf{Ottimizzazione ISE}} \\[1.5ex]
      \cmidrule(lr){3-7}
      \cmidrule(lr){8-12}
      & & \mathbf{PI} & {\textbf{IAE}} & {\textbf{ISE}} & \mathbf{IC} & {\textbf{Time}} & \mathbf{PI} & {\textbf{IAE}} & {\textbf{ISE}} & \mathbf{IC} & {\textbf{Time}} \\[1.5ex]
      \midrule
      2 & \text{1-1,2-2} & 0 & 55.3743 & 19.0786 & 4 & 10.1234 & 0 & 55.3743 & 19.0786 & 4 & 10.1234 \\[1.5ex]
      3 & \text{1-2} & 1 & 26.0642 & 11.2499 & 6 & 20.4534 & 1 & 26.0642 & 11.2499 & 6 & 20.4534 \\[1.5ex]
      4 & \text{2-1} & 2 & 24.1093 & 10.6655 & 8 & 30.2345 & 2 & 24.1093 & 10.6655 & 8 & 30.2345 \\[1.5ex]
      \bottomrule
      \end{array}
      \]
      `

      Ciò che non riesco a gestire è l’allineamento verticale delle celle. Ho provato ad utilizzare ‘m’ al posto di ‘c’ ma in quel modo perdo l’allineamento centrato orizzontale.

      Leggendo la guida “Arte”, ho pensato di utilizzare:
      `>{\centering\arraybackslash}m{1cm}`, ma a quanto pare non funziona neanche questo…

      Come posso fare???.

      Potresti innanzitutto inviare un esempio minimo compilabile.

      Ciao
      Ivan

    • #58571
      Up
      0
      Down
      ::


      Ecco un file di esempio:
      Tabella.tex

      Se provate a compilarolo, noterete come le celle contenenti “N” e “Pairing” siano palesemente allineate in alto, ma anche le altre sono tutte così.

    • #58572
      Up
      0
      Down
      ::


      Leggendo l’articolo di ArsTeXnica scaricabile da qui: http://www.guit.sssup.it/arstexnica/download_ars/articoli_ars_02/Tabelle%20su%20LATEX2e.pdf

      Ho provato ed eseguire l’esempio di Tabella 14(a).

      Inserisco qui il file di esempio: File di prova

      Sapreste spiegarmi perché, a differenza dell’articolo sopra citato, la quarta colonna non viene allineata verticalmente al centro? E’ colpa mia che voglio aumentare la dimensione delle righe?

    • #58573
      Up
      0
      Down
      ::

      Ecco un file di esempio:
      Tabella.tex

      Se provate a compilarolo, noterete come le celle contenenti “N” e “Pairing” siano palesemente allineate in alto, ma anche le altre sono tutte così.

      Non abusare di \[…\] e di array: la tua tabella è un tabular che va dentro un ambiente center.

      Non usare filetti verticali né spaziature aggiuntive con [1.5ex] (non servono affatto). Le due celle con “N” e “Pairing” vanno allineate con la riga in alto oppure con la seconda, di sicuro non vanno all’altezza dei filetti orizzontali.

      Ciao
      Enrico

Visualizzazione 3 filoni di risposte
  • Devi essere connesso per rispondere a questo topic.

Go to top