Anzeige:
Ergebnis 1 bis 13 von 13

Thema: Frage zur Tabellenformatierung

  1. #1
    Registrierter Benutzer
    Registriert seit
    09.10.2004
    Beiträge
    16

    Frage zur Tabellenformatierung

    Hallo liebe Wissenden,

    ich hoffe ihr könnt mir mal helfen. Ich habe folgendes Problem:


    Ich möchte gerne einzelne Felder innerhalb einer \tabular Umgebung definieren. Also beispielsweise Spaltenüberschrift zentriert und die restlichen Zeilen rechtsbündig.

    Außerdem versuche ich innerhalb einer Spalte einen Zeilenumbriuch hinzubekommen. \newline geht aber nur bei {pXYcm} und nicht bei {c} {l} oder {r}.

    Habt ihr vielleicht mal einen Tip für mich?


    Danke.

  2. #2
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    Einzelne Felder sollte ja kein Problem sein:

    ...
    & \begin{center} bla \end{center}

    Für ganze Spalten bietet es sich an, diese zentral neu zu definieren:

    Code:
    ...
    \usepackage{array}
    ...
    \newcolumntype{C}[1]{>{...}p{#1}<{...}}
    ...
    \begin{document}
    ...
    \begin{table}[!h]
    \begin{tabular}{ c | C{0.6\textwidth} | p{3cm} | }
    ...
    Das einzige interessante ist die \newcolumntype-Zeile, die eine neue Spalte definiert: Diese heisst C (erstes Argument), bekommt ein Argument zugewiesen (1, damit man die Breite angeben kann). Als nächstes wird eine ganz normale Spalte mit p{} definiert, der man das Argument übergibt. Anstelle der drei Punkte vor und nach der Definition von p{} kannst du nun Befehle eingeben, um die Zelle zu formatieren, beispielsweise:

    Code:
    \newcolumntype{C}[1]{>{\begin{center} \bfseries}p{#1}<{\end{center}}}
    MfG Bischi

    PS: Da es sich bei C ja um ein p{} handelt, geht \newline

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

  3. #3
    Registrierter Benutzer
    Registriert seit
    30.05.2005
    Beiträge
    56
    Hallo,

    die vorgenannten Erklärungen sind ja sehr einleuchtend. Aber warum kann ich dann nicht die unten fett gedruckten Zellen mit \begin{center} bla \end{center} zentrieren?

    Da bekomme ich immer eine Fehlermeldung geliefert.

    Code:
    \begin{table}
    \centering
        \begin{tabular}{l  l  l}
        bla       & bla        & \texttt{bla}- Bezeichnung\\
        \hline
        bla       & bla         & \texttt{bla}\\
        bla       & bla        & \texttt{bla}\\
        .....
        \end{tabular}
        \caption{Auswahl der bla bla bla}
        \label{auswahl}
    \end{table}
    Danke,

    Patch

    PS.: Keine Angst, ich hab schon im Forum gesucht, aber die Suchfunktion ist wirklich nicht der Hit

  4. #4
    Registrierter Benutzer Avatar von bischi
    Registriert seit
    10.04.2003
    Beiträge
    4.828
    Zitat Zitat von patch
    Da bekomme ich immer eine Fehlermeldung geliefert.
    Und die wäre?

    MfG Bischi

    "There is an art, it says, or rather, a knack to flying. The knack lies in learning how to throw yourself at the ground and miss it" The hitchhiker's guide to the galaxy by Douglas Adams

    --> l2picfaq.pdf <-- www.n.ethz.ch/~dominikb/index.html LaTeX-Tutorial, LaTeX-Links, Java-Links,...

  5. #5
    Registrierter Benutzer
    Registriert seit
    30.05.2005
    Beiträge
    56

    Fehlermeldung

    Code:
    ! LaTeX Error: Something's wrong--perhaps a missing \item.

  6. #6
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    55
    also ich bekomm den gleichen fehler ... aber mal ne frage zu dem \newcolumntype ... kann man das ganze auch ohne das p{} definieren .. wenn ich eh nur \begin{tabular}{cccccc} will ?

    mit
    \usepackage{tabularx}

    \newcolumntype{Z}{>{\centering\arraybackslash}X}
    \begin{table}[htbp]
    \centering
    \begin{tabularx}{\textwidth}{ZZZZZZ}
    zentriert er mir zwar die spalten .. aber wie bekomm ich den text auch an die oberkante (oder die mitte) einer jeden zelle (hab durch eingefügte grafiken sehr hohe zellen und der text steht z zt unten ^^)
    Geändert von ragna (25-01-2006 um 10:28 Uhr)

  7. #7
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    55
    keiner ne idee? :-\

  8. #8
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Moin moin,
    frei nach Marcel's tabularx-Tricks hier : setz' mal ein
    Code:
    \renewcommand{\tabularxcolumn}[1]{m{#1}}
    vor Deinen \newcolumntype{Z}..., das müsste die Inhalte vertikal zentrieren.

    [ed]
    aber wenn Du nur c-Spalten willst, warum nimmst Du sie dann nicht einfach?
    \begin{tabular}{*{6}c}...
    [/ed]

    Zu dem Zentrierproblem in einer l-Spalte:
    besser \multicolumn{1}{c}{bla} verwenden...

    MfG,
    Geändert von rais (26-01-2006 um 18:39 Uhr)
    Rainer
    There's nothing a good whack with a hammer won't fix!

  9. #9
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    55
    ich glaube ich nehm deswegen keine normale zentrierte weil ich Zeilenumbrüche in der zelle brauch ... und das ging da ja nicht ...glaub ich ^^ *spät*

    \renewcommand{\tabularxcolumn}[1]{m{#1}} klappt wunderbar .

    wie bekomm ich den text in den zellen nun an den Zellenkopf anstatt zentriert?

    und gibt es irgendwelche vorschläge für welche zwecke man welche tabellenumgebungen (also tabularx und so zeug :>) benutzt ?
    Geändert von ragna (26-01-2006 um 23:36 Uhr)

  10. #10
    Registrierter Benutzer Avatar von countbela666
    Registriert seit
    15.04.2005
    Ort
    Berlin
    Beiträge
    2.317
    Zitat Zitat von ragna
    wie bekomm ich den text in den zellen nun an den Zellenkopf anstatt zentriert?
    Erstell doch bitte mal ein Minimalbeispiel
    Zitat Zitat von ragna
    und gibt es irgendwelche vorschläge für welche zwecke man welche tabellenumgebungen (also tabularx und so zeug :>) benutzt ?
    • tabbing: einfache Tabelle durch Tabstops
    • tabular: Tabelle dynamischer Breite (Spaltenbreite je nach Inhalt oder fest)
    • tabularx: Tabelle fester Breite (Spaltenbreite je nach Inhalt, fest, oder je nach noch vorhandenem Platz)
    • longtable oder supertabular: Tabelle dynamischer Breite über mehrere Seiten
    • ltxtable: Tabelle fester Breite über mehrere Seiten

    Grüße,
    Marcel

    Listen to me children of the night, beyond the doors of darkness you will find
    a thousand worlds for you to see here, take my hand and follow me...

  11. #11
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    55
    danke für die Zusammenfassung der tabellenarten
    hier das Minimalbeispiel

    \renewcommand{\tabularxcolumn}[1]{m{#1}}
    \newcolumntype{Z}{>{\centering\arraybackslash}X}
    \begin{table}[htbp]
    \centering
    \begin{tabularx}{\textwidth}{*{6}Z}

    \toprule[1pt]
    & \begin{minipage}{2cm} \centering$\frac{dy}{(ax+ay)}$ \end{minipage}& \begin{minipage}{2cm} \centering$dx$ \\ $dy$ \end{minipage}& \begin{minipage}{2cm} \centering Berechnung $t$ \end{minipage} & $t$ & theta \\

    \midrule
    \includegraphics[scale=0.9]{tan1.pdf} & $1/2$ & $dx > 0$ $dy > 0$ & $t$ & $0.5$ & $45^\circ$ \\
    \bottomrule[1pt]
    \end{tabularx}
    \end{table}

  12. #12
    Registrierter Benutzer Avatar von countbela666
    Registriert seit
    15.04.2005
    Ort
    Berlin
    Beiträge
    2.317
    Zitat Zitat von ragna
    danke für die Zusammenfassung der tabellenarten
    gern geschehen
    Zitat Zitat von ragna
    hier das Minimalbeispiel
    naja, Minimalbeispiel? *grml*

    Hier mal ein Vorschlag:
    Code:
    \documentclass{article}
    \usepackage{calc,graphicx,tabularx,booktabs}
    \begin{document}
    \newcolumntype{Z}{>{\centering\arraybackslash}X}
    \begin{table}[htbp]
    \begin{tabularx}{\textwidth}{c*{5}Z}
    \toprule[1pt]
    & \centering$\frac{dy}{(ax+ay)}$ & \centering$dx$ \\ $dy$ & \centering Berechnung $t$ & $t$ & theta \\
    \midrule
    \raisebox{\ht\strutbox-\height}{\rule{2cm}{2cm}} & $1/2$ & $dx > 0$ $dy > 0$ & $t$ & $0.5$ & $45^\circ$ \\
    \midrule
    \raisebox{\ht\strutbox-\height}{\rule{2cm}{2cm}} & $1/2$  & $dx < 0$ $dy > 0$ & $t = 2 - t$ & $1.5$ & $135^\circ$ \\
    \midrule
    \raisebox{\ht\strutbox-\height}{\rule{2cm}{2cm}} & $-1/2$ & $dx < 0$ $dy < 0$ & $t = 2 - t$ & $2.5$ & $225^\circ$ \\
    \midrule
    \raisebox{\ht\strutbox-\height}{\rule{2cm}{2cm}} & $-1/2$ & $dx > 0$ $dy < 0$ & $t = 4 + t$ & $3.5$ & $315^\circ$ \\
    \bottomrule[1pt]
    \end{tabularx}
    \end{table}
    \end{document}
    Trick bei der Sache ist die \raisebox (Berechnung benötigt Paket calc), die ich mir bei Rolf Niepraschk in dctt abgeschaut habe. Die \rule{2cm}{2cm} sind Dummybilder, die du einfach durch dein \includegraphics{...} ersetzen kannst (wichtige Regel eines Minimalbeispiels).

    Wichtig ist auch, dass der Spaltentyp der ersten Spalte c und nicht X ist, damit ihre Breite an die der Bilder angepasst wird.

    Die Umdefinierung des Spaltentyps X von p{} auf m{} benötigst du nicht mehr (außer du willst den Zelleninhalt jeweils vertikal zentriert haben) und die minipages hab ich auch mal aus der obersten Zeile genommen (hab nicht wirklich einen Sinn drin gesehen).

    Grüße,
    Marcel
    Geändert von countbela666 (27-01-2006 um 15:58 Uhr)

    Listen to me children of the night, beyond the doors of darkness you will find
    a thousand worlds for you to see here, take my hand and follow me...

  13. #13
    Registrierter Benutzer
    Registriert seit
    17.12.2005
    Beiträge
    55
    danke [.Der von Ihnen eingegebene Text ist zu kurz. Bitte erweitern Sie den Text auf die minimale Länge von 10 Zeichen.]

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •