Tabelle a regola d’Arte: multicolumn{1} serve davvero?

  • Creatore
    Topic
  • #48425
    lorenzo.pantieri
    Partecipante
      Up
      0
      Down
      ::


      Ciao a tutti.

      Se in una tabella si definisce una colonna di un certo tipo (l, c o r, per esempio), tutte le celle della colonna saranno di quel tipo. Per avere, in quella colonna, una sola cella di tipo diverso, alcune guide consigliano di usare \multicolumn{1} nel modo seguente :
      `\documentclass{article}
      \usepackage{booktabs}
      \begin{document}

      \begin{tabular}{lc}
      \toprule
      \multicolumn{1}{c}{Vento} & Grado \\
      \midrule
      calma piatta & $0$ \\
      brezza tesa & $3$ \\
      vento forte & $6$ \\
      burrasca forte & $9$ \\
      uragano & $12$ \\
      \bottomrule
      \end{tabular}

      \end{document}`
      In questo modo, tutte le voci della prima colonna sono allineate a sinistra (colonna l), ma l’intestazione di quella colonna (“Vento”) è centrata.

      Il comando
      `\multicolumn{1}{c}{Vento}`
      è forse contro-intuitivo, visto che \multicolumn si usa per raggruppare più colonne, ma funziona perfettamente, mentre \centering (che sarebbe probabilmente più intuitivo) non funziona per motivi TeXnici.

      Bene, mi chiedevo se serve davvero ricorrere al “paradossale” \multicolumn{1}. Infatti la tabella precedente potrebbe scriversi benissimo così:
      `\begin{tabular}{lc}
      \toprule
      Vento & Grado \\
      \midrule
      calma piatta & $0$ \\
      brezza tesa & $3$ \\
      vento forte & $6$ \\
      burrasca forte & $9$ \\
      uragano & $12$ \\
      \bottomrule
      \end{tabular}`
      Il risultato è diverso (“Vento” non è più centrato, naturalmente, ma è allineato a sinistra come tutte le celle di quella colonna), ma forse è altrettanto valido.

      Ho sfogliato alcuni libri: ho trovato solo un paio di tabelle del tipo di quella che ho proposto all’inizio. Ecco le mie domande:

      1. Tipograficamente parlando, è davvero necessario/consigliabile avere una colonna con una cella di un tipo e tutte le altre di un altro?

      2. Se la risposta alla domanda è sì, chi mi sa fare un esempio significativo (e “reale”!) di tabella in cui è proprio necessario usare l’accrocchio \multicolumn{1}?

      Grazie anticipate,
      L.

    Visualizzazione 3 filoni di risposte
    • Autore
      Risposte
      • #48426
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Secondo me le celle della riga di intestazione di una tabella non è la stessa cosa delle altre celle; mi sembra abbastanza normale che l’intestazione abbia tutte le celle composte con lo stesso stile, mentre le rimanenti celle, colonna per colonna, siano composte come meglio si addice al loro contenuto.
          Questa spiegazione, se così si può chiamare, è del tutto generale, no particolare per questa o quella tabella, anche se mi rendo conto che talvolta non è facile restare coerenti con questa “regola”

        • #48427
          Up
          0
          Down
          ::


          Dunque, mi sembra di capire, non bisogna escogitare tabelle che abbiano intestazioni per forza in sintonia con il contenuto delle colonne: l’intestazione è una cosa a parte, che si potrebbe decidere di mettere sempre centrata, per esempio, anche quando le colonne richiedono di essere allineate altrimenti. Giusto?

          Sarebbe bello, però, poter usare una cosa meno macchinosa di un comando con tre argomenti obbligatori. Ma se \multicolumn{…}{…}{…} è l’unica cura, tant’è 8)

          Una cosa del tipo:

          `\begin{tabular}{*5{l}}
          \toprule
          \intestazionec{… & … & … & … & …}
          \midrule
          riga \\

          riga \\
          \bottomrule
          \end{tabular}`

          dove intestazionec centra automaticamente il contenuto delle celle.

          Ciao
          Tommaso

        • #48428
          lorenzo.pantieri
          Partecipante
            Up
            0
            Down
            ::

            Dunque, mi sembra di capire, non bisogna escogitare tabelle che abbiano intestazioni per forza in sintonia con il contenuto delle colonne: l’intestazione è una cosa a parte, che si potrebbe decidere di mettere sempre centrata, per esempio, anche quando le colonne richiedono di essere allineate altrimenti. Giusto?

            In teoria, sì. In pratica, la maggior parte delle tabelle che ho sottomano ha l’intestazione con lo stesso allineamento della colonna relativa. Se si vuole un comportamento diverso, bisogna usare \multicolumn{1}: macchinoso, come osservi.

            Ciao,
            L.

          • #48429
            Up
            0
            Down
            ::

            Dunque, mi sembra di capire, non bisogna escogitare tabelle che abbiano intestazioni per forza in sintonia con il contenuto delle colonne: l’intestazione è una cosa a parte, che si potrebbe decidere di mettere sempre centrata, per esempio, anche quando le colonne richiedono di essere allineate altrimenti. Giusto?
            Tommaso

            Io uso sempre questa soluzione, facendo ricorso a multicolumn, anche se un po’ macchinoso. 😉

            Ciao. r.

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

        Go to top