Tabella, orrore?

  • Questo topic ha 2 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 18 anni, 5 mesi fa da cpl.
  • Creatore
    Topic
  • #23472
    cpl
      Up
      0
      Down
      ::


      Buongiorno a tutti.
      Credo di aver prodotto, senza volerlo, una tabella degna della galleria degli orrori di Latex; pazienza, se pubblicata nel libro nero rinuncio da subito a qualsiasi copyright e rinnego la paternità :-).

      Purtroppo però non riesco ad inserire un testo abbastanza lungo che ‘deve’ occupare due colonne alla seconda riga. Questa è forse la peggiore tra le versioni prodotte, che però si avvicina al risultato voluto (pensate alle altre!):
      `
      \documentclass[11pt, a4paper]{report}
      \usepackage[T1]{fontenc}
      \usepackage[ansinew]{inputenc}
      \usepackage{tabularx}
      \usepackage{array}

      \begin{document}

      \newcommand{\mybox}{\parbox{0.4\textwidth}{\centering\smallskip Richiedenti di età inferiore a 40 anni non compiuti che si insediano conformemente alla misura 112 bla bla bla bla bla bla bla bla bla bla \smallskip}}
      \newcommand{\altririchiedenti}{\parbox{0.4\textwidth}{\centering\smallskip Altri richiedenti\smallskip}}
      \newcommand{\fasciaaltimetrica}{\parbox{0.2\textwidth}{\centering\smallskip Fascia altimetrica\smallskip}}

      \begin{tabular}{p{0.20\textwidth}|m{0.175\textwidth}|m{0.175\textwidth}|m{0.175\textwidth}|m{0.175\textwidth}}

      \multicolumn{5}{c}{Percentuale di aiuto pubblico sulla spesa ammessa}\tabularnewline

      \hline
      \multicolumn{1}{m{0.20\textwidth}|}{\fasciaaltimetrica} & %%
      \multicolumn{2}{m{0.40\textwidth}|}{\mybox} & %%%
      \multicolumn{2}{m{0.40\textwidth}}{\altririchiedenti}\tabularnewline
      \hline
      & Interventi edilizi/fondiari & Interventi agrari & Interventi edilizi/fondiari & Interventi agrari \tabularnewline
      \hline
      Zona svantaggiata (Montagna) & 60 & 40 & 50 & 35 \tabularnewline
      \hline
      Altre zone (Collina) & 50 & 35 & 40 & 30 \tabularnewline
      \hline
      Altre zone (Pianura) & 40 & 30 & 35 & 22 \tabularnewline
      \hline

      \end{tabular}
      `

      Ho provato con tabularx, peggiorando la situazione. Qualcuno sa aiutarmi? Grazie.
      Ciao.

    Visualizzazione 1 filone di risposte
    • Autore
      Risposte
      • #23473
        Up
        0
        Down
        ::

        Buongiorno a tutti.
        Credo di aver prodotto, senza volerlo, una tabella degna della galleria degli orrori di Latex; pazienza, se pubblicata nel libro nero rinuncio da subito a qualsiasi copyright e rinnego la paternità :-).

        Purtroppo però non riesco ad inserire un testo abbastanza lungo che ‘deve’ occupare due colonne alla seconda riga. Questa è forse la peggiore tra le versioni prodotte, che però si avvicina al risultato voluto (pensate alle altre!):
        `
        \documentclass[11pt, a4paper]{report}
        \usepackage[T1]{fontenc}
        \usepackage[ansinew]{inputenc}
        \usepackage{tabularx}
        \usepackage{array}

        \begin{document}

        \newcommand{\mybox}{\parbox{0.4\textwidth}{\centering\smallskip Richiedenti di età inferiore a 40 anni non compiuti che si insediano conformemente alla misura 112 bla bla bla bla bla bla bla bla bla bla \smallskip}}
        \newcommand{\altririchiedenti}{\parbox{0.4\textwidth}{\centering\smallskip Altri richiedenti\smallskip}}
        \newcommand{\fasciaaltimetrica}{\parbox{0.2\textwidth}{\centering\smallskip Fascia altimetrica\smallskip}}

        \begin{tabular}{p{0.20\textwidth}|m{0.175\textwidth}|m{0.175\textwidth}|m{0.175\textwidth}|m{0.175\textwidth}}

        \multicolumn{5}{c}{Percentuale di aiuto pubblico sulla spesa ammessa}\tabularnewline

        \hline
        \multicolumn{1}{m{0.20\textwidth}|}{\fasciaaltimetrica} & %%
        \multicolumn{2}{m{0.40\textwidth}|}{\mybox} & %%%
        \multicolumn{2}{m{0.40\textwidth}}{\altririchiedenti}\tabularnewline
        \hline
        & Interventi edilizi/fondiari & Interventi agrari & Interventi edilizi/fondiari & Interventi agrari \tabularnewline
        \hline
        Zona svantaggiata (Montagna) & 60 & 40 & 50 & 35 \tabularnewline
        \hline
        Altre zone (Collina) & 50 & 35 & 40 & 30 \tabularnewline
        \hline
        Altre zone (Pianura) & 40 & 30 & 35 & 22 \tabularnewline
        \hline

        \end{tabular}
        `

        Ho provato con tabularx, peggiorando la situazione. Qualcuno sa aiutarmi? Grazie.
        Ciao.

        Ti propongo un’altra versione, che usa il pacchetto booktabs:
        `\begin{tabular}{>{\raggedright}p{0.25\textwidth}cccc}
        \multicolumn{5}{c}{Percentuale di aiuto pubblico sulla spesa ammessa}\\
        \toprule
        & \multicolumn{4}{c}{Interventi} \\
        & edilizi/fondiari & agrari & edilizi/fondiari & agrari \\
        \cmidrule(lr){2-3} \cmidrule(lr){4-5}
        \multicolumn{1}{c}{\myentry{Fascia\\altimetrica}} &
        \multicolumn{2}{c}{\myentry{Richiedenti in\\base alla L. 112\textsuperscript{*}}} &
        \multicolumn{2}{c}{Altri richiedenti} \\
        \cmidrule(r){1-1} \cmidrule(lr){2-3} \cmidrule(lr){4-5}
        Zona svantaggiata (Montagna) & 60 & 40 & 50 & 35 \\
        Altre zone (Collina) & 50 & 35 & 40 & 30 \\
        Altre zone (Pianura) & 40 & 30 & 35 & 22 \\
        \bottomrule
        \multicolumn{5}{l}{\small\textsuperscript{*} Richiedenti di et\`a inferiore a 40 anni…}
        \end{tabular}`
        Non metterei tutta la pappardella nell’intestazione, ma con un semplice rimando a una nota al piede della tabella. Rovescerei anche l’ordine fra le intestazioni.

        Il comando \myentry non è niente di speciale:
        `\newcommand{\myentry}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}}`
        Serve per “simulare” multirow.

        Ciao
        Enrico

      • #23474
        cpl
          Up
          0
          Down
          ::


          Grazie.

          Non conoscevo ancora il pacchetto booktabs.

          Deve però ammettere che le tabelle (sopratutto quelle con molto testo nelle singole celle) sono per me un elemento abbastanza difficile di latex: ho problemi ad usare (e conoscere) i singoli pacchetti e, soprattuto, a disegnarle correttamente rendendole facilmente leggibili.

          Qualcuno sa indicarmi una guida/tutorial specifico?

          ciao, grazie.

      Visualizzazione 1 filone di risposte
      • Devi essere connesso per rispondere a questo topic.

      Go to top