problemi con tabularx

  • Questo topic ha 4 risposte, 2 partecipanti ed è stato aggiornato l'ultima volta 15 anni, 7 mesi fa da emi.
  • Creatore
    Topic
  • #55845
    emi
      Up
      0
      Down
      ::


      ciao a tutti!
      ho un problemino con tabularx… ho compilato la tabella con excel2latex, l’ho importata in latex ma il testo nelle colonne non va accapo automaticamente… è strano perchè nello stesso file ci sn tabelle compilate allo stesso modo e funziona perfettamente!

      vi allego il file con il mio preambolo e la tabella inquisita… quando compilo non mi da nessun errore, ma il risultato va fuori dalla pagina…

      \documentclass[a4paper,12pt,oneside,openany]{book}
      \usepackage[T1]{fontenc}
      \usepackage[latin1]{inputenc}
      \usepackage[english,italian]{babel}
      \usepackage{indentfirst}
      \usepackage{amsmath,amssymb,amsthm}
      \usepackage[italian]{varioref}
      \usepackage[babel]{csquotes}
      \usepackage[style=authoryear]{biblatex}
      \usepackage{guit}
      \bibliography{biib1,biib2,biib3}
      \usepackage{chngpage,calc}
      \usepackage{subfig}
      \usepackage{lipsum}
      \usepackage{eurosym}
      \usepackage{graphicx}
      \usepackage{emptypage}
      \usepackage{xcolor}
      \usepackage{booktabs}
      \usepackage{tabularx}
      \usepackage{textcase}
      \usepackage{caption}
      \usepackage{hyperref}
      \usepackage{bookmark}
      \usepackage{microtype}
      \usepackage{setspace}
      \onehalfspacing
      \usepackage[a4paper,top=3cm,bottom=3cm,left=4.5cm,right=1.5cm,heightrounded,bindingoffset=5mm]{geometry}
      \usepackage{fancyhdr}
      \pagestyle{fancy}
      \renewcommand{\chaptermark}[1]{\markboth{\thechapter.\;#1}{}}
      \usepackage{rotating}
      \usepackage{multirow}
      \usepackage{lscape}
      \usepackage{longtable}
      \fancyhf{}
      \fancyhead[RO]{\bfseries\thepage}
      \fancyhead[LO]{\bfseries\footnotesize\nouppercase{\leftmark}}

      \begin{document}

      \begin{table}
      \begin{tabularx}{\linewidth}{XXXX}
      \toprule
      INDICATORI & & & CRITERI\\
      \toprule
      \multicolumn{3}{l}{FACILITA’} & CAPACITA’ DI ASSEMBLAGGIO\\
      \toprule
      \multicolumn{3}{l}{Indica in termini di forza lavoro e tempo impiegato la difficoltà di realizzazione dell’elemento tecnico} & \\
      \midrule
      & & & 1. Molto difficile\\
      \cmidrule{4-4}
      & & & 2. Difficile\\
      \cmidrule{4-4}
      & & & 3. Facile\\
      \toprule
      \multicolumn{3}{l}{CAMBIAMENTO} & \\
      \toprule
      \multicolumn{3}{l}{Indica le possibilità dell’utente di apportare cambiamenti all’elemento tecnico in relazione alla funzione specifica} & \\
      \midrule
      & \multicolumn{2}{l}{SVILUPPO} & STANDARD\\
      \cmidrule{2-4}
      & \multicolumn{2}{l}{Indica la possibilità di migliorare l’elemento tecnico in termini di prestazioni} & \\
      \cmidrule{2-4}
      & & & 1. Componente speciale\\
      \cmidrule{4-4}
      & & & 2. Standard sostituibile\\
      \cmidrule{4-4}
      & & & 3. Standard prefabbricato\\
      \cmidrule{2-4}
      & \multicolumn{2}{l}{MODIFICA} & RIMOVIBILE\\
      \cmidrule{2-4}
      & \multicolumn{2}{l}{Indica la possibilità di cambiare la funzione e l’elemento tecnico} & \\
      \cmidrule{2-4}
      & & & 1. Impossibile da rimuovere\\
      \cmidrule{4-4}
      & & & 2. Rimovibile da operai\\
      \cmidrule{4-4}
      & & & 3. Rimovibile dall’utente\\
      \toprule
      CONNESSIONE & & & CONNESSO\\
      \toprule
      \multicolumn{3}{l}{Indica il livello di connessione tra gli elementi tecnici} & \\
      \midrule
      & & & 1.Impossibile da separare\\
      \cmidrule{4-4}
      & & & 2. Connesso con elementi amovibili\\
      \cmidrule{4-4}
      & & & 3. Connesso a incastro\\
      \cmidrule{4-4}
      \end{tabularx}
      \end{table}

      \end{document}

      grazie per l’aiuto, non riesco proprio a capire dove sto sbagliando! 🙁

    Visualizzazione 3 filoni di risposte
    • Autore
      Risposte
      • #55846
        Up
        0
        Down
        ::

        ciao a tutti!
        ho un problemino con tabularx… ho compilato la tabella con excel2latex, l’ho importata in latex ma il testo nelle colonne non va accapo automaticamente… è strano perchè nello stesso file ci sn tabelle compilate allo stesso modo e funziona perfettamente!

        Una colonna “l”, che sia indicata nell’argomento di tabularx o in quello di \multicolumn non viene spezzata mai.

        Non si capisce molto di quello che vuoi fare, questo può andare?
        `…

        \newcommand{\multiXcolumn}[1]{\multicolumn{#1}{>{\raggedright\arraybackslash
        \hsize=\dimexpr#1\hsize+\tabcolsep*(#1*2)\relax}X}}

        \begin{document}

        \begin{table}
        \footnotesize
        \begin{tabularx}{\linewidth}{*{4}{>{\raggedright\arraybackslash}X}}
        \toprule
        INDICATORI & & & CRITERI\\
        \toprule
        \multiXcolumn{3}{FACILITÀ} & CAPACITÀ DI ASSEMBLAGGIO\\
        \toprule
        \multiXcolumn{3}{Indica in termini di forza lavoro e tempo impiegato la difficoltà di
        realizzazione dell'elemento tecnico} & \\
        \midrule
        & & & 1. Molto difficile\\
        \cmidrule{4-4}
        & & & 2. Difficile\\
        \cmidrule{4-4}
        & & & 3. Facile\\
        \toprule
        \multiXcolumn{3}{CAMBIAMENTO} & \\
        \toprule
        \multiXcolumn{3}{Indica le possibilità dell'utente di apportare cambiamenti
        all'elemento tecnico in relazione alla funzione specifica} & \\
        \midrule
        & \multiXcolumn{2}{SVILUPPO} & STANDARD\\
        \cmidrule{2-4}
        & \multiXcolumn{2}{Indica la possibilità di migliorare l'elemento tecnico
        in termini di prestazioni} & \\
        \cmidrule{2-4}
        & & & 1. Componente speciale\\
        \cmidrule{4-4}
        & & & 2. Standard sostituibile\\
        \cmidrule{4-4}
        & & & 3. Standard prefabbricato\\
        \cmidrule{2-4}
        & \multiXcolumn{2}{MODIFICA} & RIMOVIBILE\\
        \cmidrule{2-4}
        & \multiXcolumn{2}{Indica la possibilità di cambiare la funzione e l'elemento tecnico} & \\
        \cmidrule{2-4}
        & & & 1. Impossibile da rimuovere\\
        \cmidrule{4-4}
        & & & 2. Rimovibile da operai\\
        \cmidrule{4-4}
        & & & 3. Rimovibile dall'utente\\
        \toprule
        CONNESSIONE & & & CONNESSO\\
        \toprule
        \multiXcolumn{3}{Indica il livello di connessione tra gli elementi tecnici} & \\
        \midrule
        & & & 1. Impossibile da separare\\
        \cmidrule{4-4}
        & & & 2. Connesso con elementi amovibili\\
        \cmidrule{4-4}
        & & & 3. Connesso a incastro\\
        \cmidrule{4-4}
        \end{tabularx}
        \end{table}

        \end{document}`
        Come vedi occorre un trucco per coprire con un \multicolumn corretto colonne definite tramite X. 8)

        Certo che una tabella così non è di facile interpretazione. 😯

        Un’altra cosa: l’apostrofo al posto dell’accento è sbagliato in ogni caso, che si usi il minuscolo o il maiuscolo.

        Ciao
        Enrico

      • #55847
        emi
          Up
          0
          Down
          ::


          grazie mille per la risposta!!!
          così funziona! wow!
          lo so che così la tabella non è di facile interpretazione…sto cercando il modo giusto per renderla chiara… forse devo lavorarci ancora! 😳

          io non sarei mai arrivata alla tua soluzione… è sempre necessario definire una nuova multicolumn se voglio usare tabularx? avevo provato anche con tabular* ma i risultati erano stati lo stesso pessimi….

          per l’accento…. lo so! grazie…ma scrivevo di fretta! correggo, promesso! 🙂

        • #55848
          Up
          0
          Down
          ::

          è sempre necessario definire una nuova multicolumn se voglio usare tabularx?

          Questa è una soluzione ad hoc che può funzionare in questo caso, perché la tabella è fatta solo di colonne X. Non me la sono inventata di sana pianta, c’è un trucco analogo nella documentazione di tabularx. Quel comando \multiXcolumn può naturalmente essere usato in tutte le tabelle di quel tipo.

          Ciao
          Enrico

        • #55849
          emi
            Up
            0
            Down
            ::


            Ok grazie. La studierò così posso applicarla in casi analoghi!
            ciao
            Emi

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

        Go to top