Tabella: come spezzare la frase di una colonna

  • Creatore
    Topic
  • #83359
    Up
    0
    Down
    ::


    salve
    ho un piccolo problemino con la tabella

    la tabella ha 5 colonne, ma il nome di ogni colonna è troppo lungo e quindi fuoriesce dai margini…

    per ridimensionare la tabelle mi sarebbe molto utile avere il nome delle colonne su due righe….
    come posso fare?

    grz
    `
    \begin{table}
    \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio e alle tranche, sotto l'ipotesi dello stesso nozionale.}
    \[
    \begin{array}{ccccc}
    \toprule
    \mathrm{\# \,titoli\, insolventi}(x) & \mathrm{perdita \,portafoglio} & \mathrm{\% \,perdita\,portafoglio} & \mathrm{perdita\,tranche} & \mathrm{\%\,perdita\,tranche}\\
    \midrule
    0& 0& 0& 0& 0 \\
    0,754883325& 0,749672006& 0,745124456 &0,741312163& 0,738033921 \\
    0,43024817 &0,42882891 &0,42673803 &0,42461979 &0,42254624 \\
    0,27873342 &0,28081557& 0,28099263 &0,28041493 &0,27938542 \\
    0,11817909 &0,12566295& 0,13024649 &0,13311370 &0,13465608 \\
    0,00717648 &0,00913121& 0,01089020 &0,01247244 &0,01379561 \\
    \bottomrule
    \end{array}
    \]
    \end{table}
    `

    vorrei “perdita portafoglio” diventi

    “perdita
    portafoglio”

    spero diessere stato chiaro

    grz a tutti!

Visualizzazione 17 filoni di risposte
  • Autore
    Risposte
    • #83360
      franen
      Partecipante
        Up
        0
        Down
        ::


        Chiarissimo!
        Un trucco può essere quello di creare due riche per l’intestazine, anziché una sola:`\toprule
        \mathrm{\# \,titoli\, insolventi}(x) & \mathrm{perdita} & \mathrm{\% \,perdita\,portafoglio} & \mathrm{perdita\,tranche} & \mathrm{\%\,perdita\,tranche}\\
        & portafoglio & & & \\
        \midrule `Un’altra soluzione potrebbe essere quella di ridurre il corpo del testo.
        Se poi vuoi che tutti i testi delle celle risultino allineati al centro anche verticalmente ci sono altre soluzioni riportate in un enorme numero di discussioni sl forum (ad esempio inserire in una cella un’altra tabella di una colonna e N righe). O ancora affidarsi a multirow, con i suoi limiti.

        Fran

        PS: i codici si riportano fra [ code] e [ /code] (senza spazi dopo [ ovviamente).

      • #83361
        Up
        0
        Down
        ::

        InvincibleBoy” post=82702salve
        ho un piccolo problemino con la tabella

        la tabella ha 5 colonne, ma il nome di ogni colonna è troppo lungo e quindi fuoriesce dai margini…

        per ridimensionare la tabelle mi sarebbe molto utile avere il nome delle colonne su due righe….
        come posso fare?

        grz
        `
        \begin{table}
        \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio e alle tranche, sotto l'ipotesi dello stesso nozionale.}
        \[
        \begin{array}{ccccc}
        \toprule
        \mathrm{\# \,titoli\, insolventi}(x) & \mathrm{perdita \,portafoglio} & \mathrm{\% \,perdita\,portafoglio} & \mathrm{perdita\,tranche} & \mathrm{\%\,perdita\,tranche}\\
        \midrule
        0& 0& 0& 0& 0 \\
        0,754883325& 0,749672006& 0,745124456 &0,741312163& 0,738033921 \\
        0,43024817 &0,42882891 &0,42673803 &0,42461979 &0,42254624 \\
        0,27873342 &0,28081557& 0,28099263 &0,28041493 &0,27938542 \\
        0,11817909 &0,12566295& 0,13024649 &0,13311370 &0,13465608 \\
        0,00717648 &0,00913121& 0,01089020 &0,01247244 &0,01379561 \\
        \bottomrule
        \end{array}
        \]
        \end{table}
        `

        vorrei “perdita portafoglio” diventi

        “perdita
        portafoglio”

        spero diessere stato chiaro

        grz a tutti!

        Si può migliorare ancora parecchio. Comunque intanto prova questo:
        `\documentclass{book}

        \usepackage{array,booktabs}

        \begin{document}

        \newcolumntype{L}{>{\raggedright\arraybackslash}m{2.5cm}}
        \begin{table}
        \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio e alle tranche, sotto l'ipotesi dello stesso nozionale.}
        \[
        \begin{tabular}{LLLLL}
        \toprule
        \# titoli insolventi $(x)$ & \% perdita portafoglio & \% perdita portafoglio & \% perdita tranche & \% perdita tranche
        \\ \midrule
        0& 0& 0& 0& 0 \\
        0,754883325& 0,749672006& 0,745124456 &0,741312163& 0,738033921 \\
        0,43024817 &0,42882891 &0,42673803 &0,42461979 &0,42254624 \\
        0,27873342 &0,28081557& 0,28099263 &0,28041493 &0,27938542 \\
        0,11817909 &0,12566295& 0,13024649 &0,13311370 &0,13465608 \\
        0,00717648 &0,00913121& 0,01089020 &0,01247244 &0,01379561 \\
        \bottomrule
        \end{tabular}
        \]
        \end{table}
        \end{document}`

        Ciao
        Ivan

      • #83362
        Up
        0
        Down
        ::

        InvincibleBoy” post=82702salve
        ho un piccolo problemino con la tabella

        la tabella ha 5 colonne, ma il nome di ogni colonna è troppo lungo e quindi fuoriesce dai margini…

        per ridimensionare la tabelle mi sarebbe molto utile avere il nome delle colonne su due righe….
        come posso fare?

        grz
        `
        \begin{table}
        \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio e alle tranche, sotto l'ipotesi dello stesso nozionale.}
        \[
        \begin{array}{ccccc}
        \toprule
        \mathrm{\# \,titoli\, insolventi}(x) & \mathrm{perdita \,portafoglio} & \mathrm{\% \,perdita\,portafoglio} & \mathrm{perdita\,tranche} & \mathrm{\%\,perdita\,tranche}\\
        \midrule
        0& 0& 0& 0& 0 \\
        0,754883325& 0,749672006& 0,745124456 &0,741312163& 0,738033921 \\
        0,43024817 &0,42882891 &0,42673803 &0,42461979 &0,42254624 \\
        0,27873342 &0,28081557& 0,28099263 &0,28041493 &0,27938542 \\
        0,11817909 &0,12566295& 0,13024649 &0,13311370 &0,13465608 \\
        0,00717648 &0,00913121& 0,01089020 &0,01247244 &0,01379561 \\
        \bottomrule
        \end{array}
        \]
        \end{table}
        `

        vorrei “perdita portafoglio” diventi

        “perdita
        portafoglio”

        spero diessere stato chiaro

        Le tabelle con numeri vanno trattate con siunitx:
        `\documentclass{book}

        \usepackage{array,booktabs,siunitx,caption}
        \sisetup{output-decimal-marker={,}}
        \captionsetup[table]{position=top}

        \newcommand{\tabheader}[2][l]{\begin{tabular}[t]{@{}#1@{}}#2\end{tabular}}

        \begin{document}

        \begin{table}
        \centering
        \sisetup{table-text-alignment=left} % per le celle non numeriche preferiamo l'allineamento a sinistra
        \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio
        e alle tranche, sotto l'ipotesi dello stesso nozionale.}

        \begin{tabular}{*{5}{S[table-format=1.9]}}
        \toprule
        {\tabheader{\# titoli\\ insolventi $(x)$}} &
        {\tabheader{\% perdita\\ portafoglio}} &
        {\tabheader{\% perdita\\ portafoglio}} &
        {\tabheader{\% perdita\\ tranche}} &
        {\tabheader{\% perdita\\ tranche}} \\
        \midrule
        0 & 0 & 0 & 0 & 0 \\
        0,754883325 & 0,749672006 & 0,745124456 & 0,741312163 & 0,738033921 \\
        0,43024817 & 0,42882891 & 0,42673803 & 0,42461979 & 0,42254624 \\
        0,27873342 & 0,28081557 & 0,28099263 & 0,28041493 & 0,27938542 \\
        0,11817909 & 0,12566295 & 0,13024649 & 0,13311370 & 0,13465608 \\
        0,00717648 & 0,00913121 & 0,01089020 & 0,01247244 & 0,01379561 \\
        \bottomrule
        \end{tabular}
        \end{table}
        \end{document}`
        Non usare TAB per allineare le tabelle, ne avrai immediato beneficio.

        Ciao
        Enrico

      • #83363
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Io direi che la prima cosa da fare è cambiare array in tabular. poi non devi pi¨usare \mathrm che compone si in tondo quando sei in ambiente matematico, ma le spaziature e le crenature seguono le regole matematiche non quelle del testo. Ma Userei il pacchetto array (attento a non confondere il pacchetto array con l’ambeinte array); con questo pacchetto hai a disposizione anche altri tipi di descrittori di colonna; uno è quello che consente di incolonnare i numeri sulla base del separatore decimale meglio gestito con il pacchetto dcolumn che si appoggia al pacchetto array; leggine la documentazione con il comando texdoc dcolumn dato nel terminale o nel prompt dei comandi — se non sai cosa sono queste cose, qui sopra nella Documentazione c’è la guida tematica sulla linea di comando). ma c’è anche il descrittore m{…} che si comporta come il descrittore p{…}, standard di LaTeX, ma il suo contenuto, scritto su più righe, risulta centrato nella casella, invece che allineato ripetto alla celle adiacenti sulla base della prima o unica riga come succederebbe con il descrittore p{…}. Poi usi il comando \multicolumn per configurare diversamente l’intestazioen cheti serve:`
          \begin{tabular}{*5c}
          $\mathrm\# \,titoli insolventi}(x)$ & \multicolumn1{m{6em}}{perdita portafoglio} & \mbox{\% perdita portafoglio} & \mbox{perdita tranche} & \mbox{\% perdit ,tranche}\\
          \midrule
          0& 0& 0& 0& 0 \\
          0,754883325& 0,749672006& 0,745124456 &0,741312163& 0,738033921 \\
          0,43024817 &0,42882891 &0,42673803 &0,42461979 &0,42254624 \\
          0,27873342 &0,28081557& 0,28099263 &0,28041493 &0,27938542 \\
          0,11817909 &0,12566295& 0,13024649 &0,13311370 &0,13465608 \\
          0,00717648 &0,00913121& 0,01089020 &0,01247244 &0,01379561 \\
          \bottomrule
          \end{tabular}`
          Le colonne di numeri senza dubbi stanno molto meglio se i numeri sono allineati sulla base di un termine preciso, per esempio il separatore decimale. Inoltre nelle tabelle e nel testo non bisogna mai scrivere più cifre qi quelle che hanno significato; a me qui numeri con una parte fratta di 8 o 9 cifre puzzano di calcoli fatti con la macchinetta, e senza sapere che cosa rappresentino mi pare che non abbiano piu di tre cifre decimali significative; le altre 5 o 6 non rappresentano niente. Se tu sai che sono significative, allora lasciale, ma ricordati che l’ottava cifra decimale implica che il numero sia affetto da una incertezza assoluta pari a più o meno metà del peso di una unità nella ottava posizione decimale; quindi di una incertezza assoluta di ±5miliardesimi — sei assolutamente sicuro che i dati dai quali sei partito per fare i calcoli fossero così precisi? e nei numeri che cominciano per 80 l’incertezza sfiora il trilionesimo 😮

        • #83364
          Up
          0
          Down
          ::


          grazie a tutti….

          anche se le risposte sono le piu svariate:)

          ho usato tutti e 3 i codici…..1 non veniva preso da latex(pacchetto siunx)….un altro nn era al caso mio(troppo complesso)…quindi ho deciso quello di ivan, modificandolo un po….

          il risultato è questo….ma da migliorare….

          \newcolumntype{L}{>{\raggedright\arraybackslash}m{2.0cm}}
          \begin{table}
          \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio e alle tranche, sotto l’ipotesi dello stesso nozionale.}

          \begin{tabular}{ccccc}
          \toprule
          \# titoli insolventi $(x)$ & perdita portafoglio & \% perdita portafoglio & perdita tranche & \% perdita tranche
          \\ \midrule
          0& 0& 0& 0& 0 \\
          $0

        • #83365
          Up
          0
          Down
          ::


          grazie a tutti….

          anche se le risposte sono le piu svariate:)

          ho usato tutti e 3 i codici…..1 non veniva preso da latex(pacchetto siunx)….un altro nn era al caso mio(troppo complesso)…quindi ho deciso quello di ivan, modificandolo un po….

          ho copiato tale e quale i codici di ivan, ed erano ok..ma per essere perfetti ho messo 2.0cm e tuto ok….

          poi….ho scritto il contenuto delle colonne( non erao i numeri) e il risultato è questo….come mai?

          \newcolumntype{L}{>{\raggedright\arraybackslash}m{2.0cm}}
          \begin{table}
          \caption{Propagazione delle perdita dai nominativi insolventi al portafoglio e alle tranche, sotto l’ipotesi dello stesso nozionale.}

          \begin{tabular}{ccccc}
          \toprule
          \# titoli insolventi $(x)$ & perdita portafoglio & \% perdita portafoglio & perdita tranche & \% perdita tranche
          \\ \midrule
          0& 0& 0& 0& 0 \\
          $0

        • #83366
          Up
          0
          Down
          ::


          grazie a tutti….

          anche se le risposte sono le piu svariate:)

          ho optato per quello piu semplice….e che mi funzionasse con la classe thesis ^^

          il risultato è questo:

          `\begin{table}
          \caption{Propagazione delle perdite dai nominativi insolvent5i al portafoglio e alle tranche, sotto l'ipotesi di stesso nozionale.}
          \begin{tabular}{ccccc}
          \toprule
          {\# titoli} & perdita & \% perdita & perdita & \% perdita\\
          insolventi $(x)$ & portafoglio & portafoglio & tranche & tranche\\
          \midrule
          0& 0& 0& 0& 0 \\
          $0

        • #83367
          Up
          0
          Down
          ::

          InvincibleBoy” post=82714grazie a tutti….

          anche se le risposte sono le piu svariate:)

          ho optato per quello piu semplice….e che mi funzionasse con la classe thesis ^^

          il risultato è questo:

          `\begin{table}
          \caption{Propagazione delle perdite dai nominativi insolvent5i al portafoglio e alle tranche, sotto l'ipotesi di stesso nozionale.}
          \begin{tabular}{ccccc}
          \toprule
          {\# titoli} & perdita & \% perdita & perdita & \% perdita\\
          insolventi $(x)$ & portafoglio & portafoglio & tranche & tranche\\
          \midrule
          0& 0& 0& 0& 0 \\
          $0

          Opta per quello che ti pare, ma poi non lamentarti che il risultato non è come ti aspetti. 🙂
          `\documentclass{book}
          \usepackage{amsmath}
          \usepackage{array,booktabs,siunitx,caption}
          \sisetup{output-decimal-marker={,}}
          \captionsetup[table]{position=top}
          \newcommand{\tabheader}[2][l]{\begin{tabular}[t]{@{}#1@{}}#2\end{tabular}}

          \begin{document}
          \begin{table}
          \centering
          \caption{Propagazione delle perdite dai nominativi insolventi
          al portafoglio e alle tranche, sotto l'ipotesi di stesso nozionale.}
          \newcolumntype{C}{>{$\vphantom{\dfrac{1}{1}}}c<{$}} \addtolength{\tabcolsep}{-1pt} \begin{tabular}{CCCCC} \toprule \tabheader{\# titoli\\insolventi $(x)$} & \tabheader{perdita\\portafoglio} & \tabheader{\% perdita\\portafoglio} & \tabheader{perdita\\tranche} & \tabheader{\% perdita\\tranche} \\ \midrule 0&0&0&0&0 \\ 0

        • #83368
          Up
          0
          Down
          ::


          grazie….

          ma ho provato tutti i codici che mi avete consigliato ma non funzionavano…mi dava errore latex….

          ho cercato di capire il problema ma non conosco tutti i comandi(perche non li ho mai usati…ma prima di tutto capiti)….

          quindi ho cercato una soluzione adiacente…

          il codice ultimo funziona…

          ma come mai si preferisce una spaziatura maggiore tra le righe?…..per un discorso di impaginazione e vista d occhio dellapagina?

        • #83369
          alegenn
          Partecipante
            Up
            0
            Down
            ::


            Come sempre, mi tolgo il cappello 🙂
            Devo dire che leggere questo post mi ha fatto capire la giusta nonché profonda relazione tra siunitx e l’ambiente table.
            Mi sono pertanto letto la relativa parte della documentazione e naturalmente ho salvato il comando:
            `\newcommand{\tabheader}[2][l]{\begin{tabular}[t]{@{}#1@{}}#2\end{tabular}}`

          • #83370
            alegenn
            Partecipante
              Up
              0
              Down
              ::

              egreg9″ post=82719

              grazie a tutti….

              anche se le risposte sono le piu svariate:)

              ho optato per quello piu semplice….e che mi funzionasse con la classe thesis ^^

              il risultato è questo:

              `\begin{table}
              \caption{Propagazione delle perdite dai nominativi insolvent5i al portafoglio e alle tranche, sotto l'ipotesi di stesso nozionale.}
              \begin{tabular}{ccccc}
              \toprule
              {\# titoli} & perdita & \% perdita & perdita & \% perdita\\
              insolventi $(x)$ & portafoglio & portafoglio & tranche & tranche\\
              \midrule
              0& 0& 0& 0& 0 \\
              $0

              Opta per quello che ti pare, ma poi non lamentarti che il risultato non è come ti aspetti. 🙂
              `\documentclass{book}
              \usepackage{amsmath}
              \usepackage{array,booktabs,siunitx,caption}
              \sisetup{output-decimal-marker={,}}
              \captionsetup[table]{position=top}
              \newcommand{\tabheader}[2][l]{\begin{tabular}[t]{@{}#1@{}}#2\end{tabular}}

              \begin{document}
              \begin{table}
              \centering
              \caption{Propagazione delle perdite dai nominativi insolventi
              al portafoglio e alle tranche, sotto l'ipotesi di stesso nozionale.}
              \newcolumntype{C}{>{$\vphantom{\dfrac{1}{1}}}c<{$}} \addtolength{\tabcolsep}{-1pt} \begin{tabular}{CCCCC} \toprule \tabheader{\# titoli\\insolventi $(x)$} & \tabheader{perdita\\portafoglio} & \tabheader{\% perdita\\portafoglio} & \tabheader{perdita\\tranche} & \tabheader{\% perdita\\tranche} \\ \midrule 0&0&0&0&0 \\ 0

            • #83371
              Up
              0
              Down
              ::


              come si fanno i riferimenti incrociati per le tabelle e figure?…..

              come per le formule giusto?

            • #83372
              Up
              0
              Down
              ::

              InvincibleBoy” post=82771come si fanno i riferimenti incrociati per le tabelle e figure?…..

              come per le formule giusto?

              `\caption{Testo della didascalia}\label{xyz}

              Figura~\ref{xyz}`
              Ciao
              Enrico

            • #83373
              Up
              0
              Down
              ::

              InvincibleBoy” post=82771come si fanno i riferimenti incrociati per le tabelle e figure?…..

              come per le formule giusto?

              Potresti anche leggerti una guida qualunque, per esempio. Queste cose sono scritte dappertutto.

              Ciao
              Tommaso

            • #83374
              Up
              0
              Down
              ::

              egreg9″ post=82772

              come si fanno i riferimenti incrociati per le tabelle e figure?…..

              come per le formule giusto?

              `\caption{Testo della didascalia}\label{xyz}

              Figura~\ref{xyz}`
              Ciao
              Enrico

              ok grz

              ma non si mettono tra parentesi tonde ( )?cioè con `\\eqref{}`? come le formule? o stilisticamente vanno senza ()?
              grz

            • #83375
              Up
              0
              Down
              ::


              Ciao InvincibleBoy,

              personalmente i riferimenti alle equazioni li faccio così:
              `[…] L'equazione~\eqref{eq:labelEquazione} indica chiaramente che […]`
              mentre per le figure:
              `[…] come mostrato nella figura~\vref{fig:labelFigura}.`
              Dove [tt]\vref[/tt] è un comando messo a disposizione del pacchetto [tt]varioref[/tt] (da caricare con l’opzione [tt]italian[/tt]). Non mi risulta che ci sia un comando del tipo [tt]\figref;[/tt] credo proprio di non sbagliare nel dirti che facendo come faccio io rispetterai anche le buone norme tipografiche/estetiche. (Anche sull’Arte non mi sembra che vengano mostrate altre opzioni.)

              Ciao e buona giornata,
              Marco.

            • #83376
              Up
              0
              Down
              ::

              InvincibleBoy” post=82777
              ok grz

              ma non si mettono tra parentesi tonde ( )?cioè con `\\eqref{}`? come le formule? o stilisticamente vanno senza ()?
              grz

              E dove sarebbero le parentesi tonde nel tuo esempio? Hai letto una guida come ti ho indicato? Che comando è quello che hai scritto?

              Ciao
              Tommaso

            • #83377
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                Nell’Arte le equazioni sono citate fra parentesi tonde come ha detto @Marco87. Le figure, le tabelle, i capitoli, i paragrafi, e ogni altro oggetto a cui ci si può riferire con \label, \ref,\vref, eccetera, non ẁ mai citato fra parentesi tonde.

                Personalmente, anche se le formule sono etichettate con un numero al margine racchiuso fra parentesi tonde, non trovo sconveniente non usare \eqref nel testo per citarle; se si scrive in buon italiano dicendo “…la formula 3.1 rappresenta…” va bene anche senza parentesi, mentre scrivendo “.. la (3.1) rappresenta…” ci vogliono senz’altro le parentesi, ma non è buon italiano (e nemmeno buon inglese, francese, eccetera); scrivendo “… l’eq. (31.1) rappresenta…” si compie un ulteriore errore, nel senso che le abbreviazioni in tipografia sono concesse solo all’interno di incisi parentetici, per esempio “(\vedi eq. 3.1)”, e in questo so le parentesi che racchiudono il riferimento dell’equazione sarebbero davvero di troppo.

                Vedi dunque che l’estetica tipografica, le abitudini consolidate sia personali sia generali, il fraintendimento del significato delle citazioni, sono cose su cui si trova una soluzione solo ragionandoci sopra, documentandosi e mantenendo un comportamento coerente, visto che questa è forse l’unica regola tipografica che non si può violare.

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

            Go to top