Problema tabelle annidate

  • Creatore
    Topic
  • #46880
    Up
    0
    Down
    ::


    Ciao a tutti!
    ho bisogno di costruire delle tabelle piuttosto complesse. L’unica soluzione che mi è venuta in mente è l’uso di tabelle annidate. Ad esempio, sto tentando di fare una cosa così:
    `
    |—–|—–|
    | | B |
    | A |—–|
    | | C |
    |—–|—–|
    `
    In cui, per semplicità, in A sta un’altra tabella (nell’esempio che vi mostro è di 3 righe e 3 colonne) mentre B e C, per ora, possono essere anche solo un singolo elemento. Il codice che vi presento non lascia sufficiente spazio in altezza per la tabella A e la fa sforare sotto. Sembra un problema di multirow. Provate a compilare e capirete subito.
    `
    \documentclass[a4paper,italian,twoside,11pt]{scrreprt}
    \usepackage{babel}
    \usepackage{pslatex}
    \usepackage{microtype}
    \usepackage[ansinew]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{subfig}
    \usepackage[pdftex]{graphicx}
    \usepackage{booktabs}
    \usepackage{multirow}

    \begin{document}

    \begin{tabular}{cc}
    \toprule
    \multirow{2}{*}{
    \begin{tabular}{lcr}
    \toprule
    Apple & Mac~OS~X & 10.5 \\
    \midrule
    NeXT & NeXTSTEP & 3.3 \\
    \midrule
    Be & BeOS & 5.0 \\
    \bottomrule
    \end{tabular}
    } & Tabella B\\
    & Tabella C\\
    \bottomrule
    \end{tabular}

    \end{document}
    `

    Spero di essermi spiegato bene.
    Grazie a tutti fin d’ora.
    ciao

Visualizzazione 3 filoni di risposte
  • Autore
    Risposte
    • #46881
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Sei sicuro di voler fare un “tabella” così come la descrivi e la esemplifichi?

        Una cella multirow ha senso solo come spiegazione delle righe che abbraccia e ha senso solo se la si mette per prima o per ultima. Ma nel tuo caso non avrebbe senso nemmeno se mettessi le tabelle B e C dentro due multirow.

        A me pare un sciocchezza, perché le righe e le colonne della tua tabella non sono correlate, quindi non ha senso usare una tabella.

        Potresti più seriamete fare tre tabelle e disporle come credi meglio dentro un unico ambiente table e dentro un ambiente subtab (o come si chiama l’ambiente simile a subfig), ognuna con una susa piccola didascalia e il tutto con la didascalia generale dell’ambiente table.

        Nota che una tabella realizzata con l’ambiente LaTeX tabular, è programmata mediante iil comando primitivo TeX \halign che serve per allineare verticalmente delle righe di celle.

        TeX avrebbe anche il comando \valign che serve per allineare orizzontalmente delle colonne di celle. Non ho mai visto un esempio credibile di uso di \valign, utile forse per le lingue con scrittura verticale come talvolta il giapponese e il cinese. Forse con \valign potresti realizzare la tua “tabella”, ma, come ho detto sopra, ripensala!

      • #46882
        Up
        0
        Down
        ::

        Sei sicuro di voler fare un “tabella” così come la descrivi e la esemplifichi?

        Una cella multirow ha senso solo come spiegazione delle righe che abbraccia e ha senso solo se la si mette per prima o per ultima. Ma nel tuo caso non avrebbe senso nemmeno se mettessi le tabelle B e C dentro due multirow.

        A me pare un sciocchezza, perché le righe e le colonne della tua tabella non sono correlate, quindi non ha senso usare una tabella.

        Potresti più seriamete fare tre tabelle e disporle come credi meglio dentro un unico ambiente table e dentro un ambiente subtab (o come si chiama l’ambiente simile a subfig), ognuna con una susa piccola didascalia e il tutto con la didascalia generale dell’ambiente table.

        Nota che una tabella realizzata con l’ambiente LaTeX tabular, è programmata mediante iil comando primitivo TeX \halign che serve per allineare verticalmente delle righe di celle.

        TeX avrebbe anche il comando \valign che serve per allineare orizzontalmente delle colonne di celle. Non ho mai visto un esempio credibile di uso di \valign, utile forse per le lingue con scrittura verticale come talvolta il giapponese e il cinese. Forse con \valign potresti realizzare la tua “tabella”, ma, come ho detto sopra, ripensala!

        Sono sicuro tu abbia ragione, però quello che devo produrre non è una tabella per un libro o un articolo ma è un report di un impianto di misura del gas. Questo per dire che ho delle necessità che forse sono un po’ difficili da comprendere.
        Tuttavia, è vero che le mie tre tabelle non hanno un nesso, anzi, sono tre tabelle ben distinte, con numeri diversi di righe e colonne l’una dall’altra che però devono stare in un unica pagina, una a fianco all’altra e disposte come ci viene indicato dal cliente. L’alternativa è fare il tutto come abbiamo sempre fatto (io e i miei colleghi) e cioè fare un file .txt e usare i trattini orizzontali e verticali per scimmiottare i bordi di una tabella!! Ho proposto io di usare il LaTeX perchè sarebbe molto più facile creare il report, aggiugnere o togliere, eventualmente, righe e colonne e verrebbe sicuramente meglio.
        Avevo pensato all’uso di \subtable o \subfloat ma non voglio le didascalie, nè per ogni tabella, nè per la tabella globale. Non ho controllato se esiste il modo di non fargli inserire didascalie.
        L’uso di una macro tabella era per consentirmi di allineare a mio piacimento più oggetti tabella..però pare non ci sia soluzione…!
        Grazie della risposta.
        ciao

      • #46883
        Up
        0
        Down
        ::

        Sei sicuro di voler fare un “tabella” così come la descrivi e la esemplifichi?

        Una cella multirow ha senso solo come spiegazione delle righe che abbraccia e ha senso solo se la si mette per prima o per ultima. Ma nel tuo caso non avrebbe senso nemmeno se mettessi le tabelle B e C dentro due multirow.

        A me pare un sciocchezza, perché le righe e le colonne della tua tabella non sono correlate, quindi non ha senso usare una tabella.

        Potresti più seriamete fare tre tabelle e disporle come credi meglio dentro un unico ambiente table e dentro un ambiente subtab (o come si chiama l’ambiente simile a subfig), ognuna con una susa piccola didascalia e il tutto con la didascalia generale dell’ambiente table.

        Nota che una tabella realizzata con l’ambiente LaTeX tabular, è programmata mediante iil comando primitivo TeX \halign che serve per allineare verticalmente delle righe di celle.

        TeX avrebbe anche il comando \valign che serve per allineare orizzontalmente delle colonne di celle. Non ho mai visto un esempio credibile di uso di \valign, utile forse per le lingue con scrittura verticale come talvolta il giapponese e il cinese. Forse con \valign potresti realizzare la tua “tabella”, ma, come ho detto sopra, ripensala!

        Sono d’accordo su tutto: l’esempio mostrato dice che non si tratta di una tabella.

        Ecco, su una cosa non sono del tutto d’accordo: che non ci siano applicazioni interessanti di \valign:
        http://www.guit.sssup.it/phpBB2/viewtopic.php?t=3299&highlight=valign
        http://www.guit.sssup.it/phpBB2/viewtopic.php?t=4276&highlight=valign
        Il secondo fa riferimento a una macro per scrivere vettori colonna indicandone una componente:
        `\newcommand\hplace[3][1em]{#3\rlap{\kern#1\relax
        \valign{%
        \vfil\hbox{$##$}\vfil\cr
        \vphantom{#2}\cr
        \scriptscriptstyle\leftarrow\cr
        \noalign{\kern2pt}
        \scriptstyle#1\cr}}}`
        e l’esempio (richiede fancyvrb} è questo:
        `\begin{SaveVerbatim}{VerbEnv}
        \begin{bmatrix}
        0\\
        \dots\\
        0\\
        \hplace{k}{1}\\
        0\\
        \dots\\
        0
        \end{bmatrix}
        \end{SaveVerbatim}
        \valign{\vfil\hbox{#}\vfil\cr
        \BUseVerbatim{VerbEnv}\cr\noalign{\hskip4em}$\to$\cr\noalign{\hskip4em}
        $\begin{bmatrix}0\\\dots\\0\\\hplace{k}{1}\\0\\\dots\\0\end{bmatrix}$\cr
        }`
        Ma convengo che si tratta di applicazioni un po’ esoteriche che non hanno davvero a che fare con le tabelle.

        Ciao
        Enrico

      • #46884
        robitex
        Amministratore del forum
          Up
          0
          Down
          ::


          Se è uno schema allora perché non usare uno strumento di disegno?
          PStricks, PGF, sono solo le tre alternative più diffuse.

          Non vi sembra un idea da valutare?
          Bye

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

      Go to top