Bordi delle tabelle

  • Creatore
    Topic
  • #16301
    Up
    0
    Down
    ::


    Eccomi finalmente al primo topic su questo stupendo ed utilissimo forum!, complimenti a tutti!

    Desidero fare la seguente cosa: le tabelle devono avere un bordo piu’ spesso delle righe interne.

    Se mi accontento delle sole righe orizzontali, questo è possibile farlo con booktab, se invece (come desidero io) lo voglio fare anche per quelle verticali, l’unico modo che ho trovato di farlo è il seguente:

    Nel preambolo:
    `\setlength{\fboxsep}{0pt}
    \setlength{\fboxrule}{1pt} % spessore normale righe: 0.4pt
    `

    Nel documento:
    `\begin{table}[h!]
    \centering
    \fbox{
    \centering
    \begin{tabular}{c|c}

    \end{tabular}
    }
    \end{table}
    `

    La cosa sembra funzionare, tuttavia ho due domande:

    1. c’e’ un modo piu’ intelligente per farlo, invece che usare fbox?

    2. vorrei creare un nuovo environment ‘mytable’ in modo che chiamando questo mi crei in automatico la tabella con l’fbox dentro cui poi metto il comando tabular. Per intenderci, ho provato a scrivere qualcosa del genere, ma ovviamente non funziona!
    `\newenvironment{mytable}[1]{
    \begin{table}[#1]
    \centering
    \fbox{
    \centering
    }{
    }
    \end{table}
    }
    `

    Grazie per ogni eventuale consiglio!

Visualizzazione 3 filoni di risposte
  • Autore
    Risposte
    • #16302
      lorenzo.pantieri
      Partecipante
        Up
        0
        Down
        ::

        Se mi accontento delle sole righe orizzontali, questo è possibile farlo con booktab, se invece (come desidero io) lo voglio fare anche per quelle verticali, l’unico modo che ho trovato di farlo è…

        Dalla documentazione di booktabs:

        Never, never use vertical lines.

        Io mi atterrei a quel consiglio!

        Ciao,
        L.

      • #16303
        Up
        0
        Down
        ::

        Eccomi finalmente al primo topic su questo stupendo ed utilissimo forum!, complimenti a tutti!

        Desidero fare la seguente cosa: le tabelle devono avere un bordo piu’ spesso delle righe interne.

        Se mi accontento delle sole righe orizzontali, questo è possibile farlo con booktab, se invece (come desidero io) lo voglio fare anche per quelle verticali, l’unico modo che ho trovato di farlo è il seguente:

        Nel preambolo:
        `\setlength{\fboxsep}{0pt}
        \setlength{\fboxrule}{1pt} % spessore normale righe: 0.4pt
        `

        Nel documento:
        `\begin{table}[h!]
        \centering
        \fbox{
        \centering
        \begin{tabular}{c|c}

        \end{tabular}
        }
        \end{table}
        `

        La cosa sembra funzionare, tuttavia ho due domande:

        1. c’e’ un modo piu’ intelligente per farlo, invece che usare fbox?

        2. vorrei creare un nuovo environment ‘mytable’ in modo che chiamando questo mi crei in automatico la tabella con l’fbox dentro cui poi metto il comando tabular. Per intenderci, ho provato a scrivere qualcosa del genere, ma ovviamente non funziona!
        `\newenvironment{mytable}[1]{
        \begin{table}[#1]
        \centering
        \fbox{
        \centering
        }{
        }
        \end{table}
        }
        `

        Come ti ha detto Lorenzo, non si devono (quasi) mai usare linee verticali nelle tabelle. Tanto meno linee più spesse se non per delimitare in alto e in basso la tabella. Fidati e usa booktabs (leggendone la documentazione).

        Ti do la soluzione, perché è comunque interessante.
        `\newsavebox{\horridtabularbox}
        \newenvironment{horridtabular}[2][c]
        {\begin{lrbox}{\horridtabularbox}\begin{tabular}[#1]{#2}}
        {\end{tabular}\end{lrbox}%
        \setlength{\fboxrule}{1pt}\setlength{\fboxsep}{0pt}%
        \fbox{\usebox{\horridtabularbox}}}`
        Puoi usare adesso \begin{horridtabular} esattamente come \begin{tabular}, ovviamente omettendo \hline all’inizio e alla fine.

        Il tuo tentativo non può funzionare, perché non puoi avere graffe non bilanciate in una definizione. Inoltre non è l’ambiente table da modificare, quanto proprio tabular; se anche il tuo funzionasse, come potresti inserire la didascalia della tabella?

        Con \usepackage{booktabs} hai a disposizione una struttura molto più elegante:
        `\begin{tabular}{…}
        \toprule
        \\
        \midrule

        \bottomrule
        \end{tabular}`
        Prova a confrontare e vedrai. Naturalmente, niente linee verticali nella tabella con booktabs.

        Ciao
        Enrico

      • #16304
        Up
        0
        Down
        ::


        Perfetto, ora funziona alla grande (anche se cambierò il nome con wonderfultabular!) 😉

        Immaginavo di non poter aprire e chiudere le parentesi graffe come facevo io, ma ignoravo l’esistenza dei comandi che mi hai suggerito.

        Tuttavia, continuo a non capire l’ostilità verso nel righe verticali, e non mi sembra una soluzione dire: accontentati di quello che fa booktab!

        Prima di tutto, mi piace l’idea di una cornice che chiude la tabella; inoltre, spesso le righe verticali mettono ordine. Ovvio, dipende da quando è ‘fitta’ la tabella, ma cmq la mia domanda era riferita alla cornice esterna.

        Inoltre, è un fatto di principio! L’uomo deve vincere sulla macchina!! 😆

      • #16305
        Up
        0
        Down
        ::

        Perfetto, ora funziona alla grande (anche se cambierò il nome con wonderfultabular!) 😉

        Immaginavo di non poter aprire e chiudere le parentesi graffe come facevo io, ma ignoravo l’esistenza dei comandi che mi hai suggerito.

        Tuttavia, continuo a non capire l’ostilità verso nel righe verticali, e non mi sembra una soluzione dire: accontentati di quello che fa booktab!

        Prima di tutto, mi piace l’idea di una cornice che chiude la tabella; inoltre, spesso le righe verticali mettono ordine. Ovvio, dipende da quando è ‘fitta’ la tabella, ma cmq la mia domanda era riferita alla cornice esterna.

        Inoltre, è un fatto di principio! L’uomo deve vincere sulla macchina!! 😆

        Le tabelle riquadrate sono quanto di più brutto si possa immaginare in ambito tipografico. Le righe più spesse attorno sono un espediente che peggiora la faccenda.

        Non è questione di “accontentarsi” dello schema consigliato da booktabs; ci sono dietro studi di leggibilità. Ma fa’ pure come ti pare, sei padronissimo di rendere il tuo documento una schifezza tipografica. Ricordati di non mettermi nei ringraziamenti, se usi quegli orrori. 🙂

        Ciao
        Enrico

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

    Go to top