ruotare testo in celle di tabella

  • Creatore
    Topic
  • #54110
    Daniele
    Partecipante
      Up
      0
      Down
      ::


      Ciao,
      ho cercato sul forum ma non ho trovato risposta. Qualcuno sa dirmi se è possibile ruotare il testo di una cella di tabella, ed eventualmente come fare? Vorrei scrivere un testo con orientamento verticale in una cella creata con multirow.

      Grazie,
      Daniele

    Visualizzazione 4 filoni di risposte
    • Autore
      Risposte
      • #54111
        GKT
        Partecipante
          Up
          0
          Down
          ::

          Ciao,
          ho cercato sul forum ma non ho trovato risposta. Qualcuno sa dirmi se è possibile ruotare il testo di una cella di tabella, ed eventualmente come fare? Vorrei scrivere un testo con orientamento verticale in una cella creata con multirow.

          Grazie,
          Daniele

          Pacchetto rotating. Il testo da ruotare va inserito in un ambiente sideways:
          `\begin{sideways}Testo verticale \end{sideways}`
          Non sono sicuro se la soluzione possa funzionare bene anche con multirow, non posso fare prove al momento.

          Lorenzo

        • #54112
          admin
          Amministratore del forum
            Up
            0
            Down
            ::


            Effettivamente se riporti un esempio minimo compilabile possiamo fare delle prove.
            Un’altra soluzione potrebbe essere \rotatebox del pacchetto graphicx.

            Ciao,
            ansys.

          • #54113
            Daniele
            Partecipante
              Up
              0
              Down
              ::


              Grazie a tutti. Ho provato le due soluzioni riscontrando che funzionano entrambe. Per chi fosse interessato propongo il codice usato, per il quale sono ben lieto di accettare consigli.
              Mi pare che funzioni meglio rotatebox, che fornisce un centraggio migliore. Voi che ne dite?

              Ciao,
              Daniele

              PS: Ho creato la tabella in questo modo, molto sviluppata in altezza e poco in larghezza, in quanto ne vorrei affiancare due con subfig. Però se qualcuno avesse una proposta interessante per riorganizzarla dica pure. Potrei rivedere la cosa.

              `\documentclass[a4paper,11pt]{article}

              \usepackage[T1]{fontenc}
              \usepackage[latin1]{inputenc}
              \usepackage[italian]{babel}

              \usepackage{array}
              \usepackage{booktabs}
              \usepackage{multirow}
              \usepackage{caption}
              \captionsetup[table]{position=top,skip=\medskipamount}
              \usepackage{rotating}

              \begin{document}

              \begin{table}[tb]
              \caption{Didascalia della tabella.}
              \label{tab:label}
              \centering
              \newcolumntype{C}{>{$}c<{$}} \begin{tabular}{cCCC} \toprule & & \alpha_1 & \alpha_2 \\ \midrule \multirow{4}*{\begin{sideways}s/b=1/3\end{sideways}} & \varepsilon=1 & .9 & .8 \\ & \varepsilon=.9 & .6 & .5 \\ & \varepsilon=.8 & .8 & .9 \\ & \varepsilon=.7 & .4 & .7 \\ \midrule \multirow{4}*{\begin{sideways}s/b=1/8\end{sideways}} & \varepsilon=1 & .9 & .8 \\ & \varepsilon=.9 & .6 & .5 \\ & \varepsilon=.8 & .8 & .9 \\ & \varepsilon=.7 & .4 & .7 \\ \bottomrule \end{tabular} \end{table} \begin{table}[tb] \caption{Didascalia della tabella.} \label{tab:label1} \centering \newcolumntype{C}{>{$}c<{$}} \begin{tabular}{cCCC} \toprule & & \alpha_1 & \alpha_2 \\ \midrule \multirow{4}*{\rotatebox[origin=c]{90}{s/b=1/3}} & \varepsilon=1 & .9 & .8 \\ & \varepsilon=.9 & .6 & .5 \\ & \varepsilon=.8 & .8 & .9 \\ & \varepsilon=.7 & .4 & .7 \\ \midrule \multirow{4}*{\rotatebox[origin=c]{90}{s/b=1/8}} & \varepsilon=1 & .9 & .8 \\ & \varepsilon=.9 & .6 & .5 \\ & \varepsilon=.8 & .8 & .9 \\ & \varepsilon=.7 & .4 & .7 \\ \bottomrule \end{tabular} \end{table} \end{document}`

            • #54114
              Up
              0
              Down
              ::


              Le tabelle direche vanno bene, ma ti consiglierei di mettere il `\varepsilon` sulla testa della tabella.
              Questo è il codice che ti propongo:
              `
              \documentclass[a4paper,11pt]{article}

              \usepackage[T1]{fontenc}
              \usepackage[latin1]{inputenc}
              \usepackage[italian]{babel}

              \usepackage{array}
              \usepackage{booktabs}
              \usepackage{multirow}
              \usepackage{caption}
              \captionsetup[table]{position=top,skip=\medskipamount}
              \usepackage{rotating}

              \begin{document}

              \begin{table}[tb]
              \caption{Didascalia della tabella.}
              \label{tab:label}
              \centering
              \newcolumntype{C}{>{$}c<{$}} \begin{tabular}{cCCC} \toprule & [color=red]\varepsilon[/color] & \alpha_1 & \alpha_2 \\ \midrule \multirow{4}*{\begin{sideways}s/b=1/3\end{sideways}} & 1 & 0.9 & 0.8 \\ & 0.9 & 0.6 & 0.5 \\ & 0.8 & 0.8 & 0.9 \\ & 0.7 & 0.4 & 0.7 \\ \midrule \multirow{4}*{\begin{sideways}s/b=1/8\end{sideways}} & 1 & 0.9 & 0.8 \\ & 0.9 & 0.6 & 0.5 \\ & 0.8 & 0.8 & 0.9 \\ & 0.7 & 0.4 & 0.7 \\ \bottomrule \end{tabular} \end{table} \begin{table}[tb] \caption{Didascalia della tabella.} \label{tab:label1} \centering \newcolumntype{C}{>{$}c<{$}} \begin{tabular}{cCCC} \toprule & [color=red]\varepsilon[/color] & \alpha_1 & \alpha_2 \\ \midrule \multirow{4}*{\rotatebox[origin=c]{90}{s/b=1/3}} & 1 & 0.9 & 0.8 \\ & 0.9 & 0.6 & 0.5 \\ & 0.8 & 0.8 & 0.9 \\ & 0.7 & 0.4 & 0.7 \\ \midrule \multirow{4}*{\rotatebox[origin=c]{90}{s/b=1/8}} & 1 & 0.9 & 0.8 \\ & 0.9 & 0.6 & 0.5 \\ & 0.8 & 0.8 & 0.9 \\ & 0.7 & 0.4 & 0.7 \\ \bottomrule \end{tabular} \end{table} \end{document} ` Saluti Michele

            • #54115
              Daniele
              Partecipante
                Up
                0
                Down
                ::


                Geniale!!! 😀 (lo dico con un pizzico di autoironia, dato che potevo evitarmi una schifezza del genere) Hai pienamente ragione. Devo ammetere che avevo fatto una stupidaggine bella e buona. Correggo subito.

                Ciao,
                Daniele

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

            Go to top▲