Anzeige:
Ergebnis 1 bis 7 von 7

Thema: tabularx mit dcolumn

  1. #1
    Registrierter Benutzer
    Registriert seit
    30.06.2009
    Beiträge
    197

    tabularx mit dcolumn

    Hallo liebe Setzergemeinde,

    habe eine einfache Tabelle und möchte die Inhalte der letzten 2 Zeilen (mit Ausnahme der ersten Spalte, die nur Text enthält) am Komma ausrichten, was mir auch gelungen ist. Jedoch werden die am Komma ausgerichteten Zellen nicht horizontal zentriert (wie die Inhalte der ersten 3 Zeilen). Verstehe einfach nicht warum.

    Habe natürlich die Doku zu dcolumn gelesen und mir außerdem so manchen thread zu diesem Thema angeschaut. Vielleicht weiß jemand weiter? Würde mich jedenfalls sehr freuen.

    Darüber hinaus verstehe ich nicht warum sich durch Verwendung von \multicolumn die Schriftart der Zahlen verändert.

    Minimalbeispiel:

    Code:
    \documentclass{scrartcl}
    \RequirePackage{array,ragged2e,calc,booktabs}
    \RequirePackage{tabularx}
    \RequirePackage{dcolumn}
    \begin{document}
    \begin{table}[!ht]
    \small
    \renewcommand{\arraystretch}{1.5}
    \newcolumntype{C}{>{\Centering}X}
    \newcolumntype{d}{D{,}{,}{-1}}
    \begin{tabularx}{325pt}{@{}l@{\hspace{6mm}}C@{\hspace{-2mm}}C@{\hspace{4.5mm}}c@{}}
    \toprule 
    &\textbf{xxx}&\textbf{xxx}&\textbf{xxx}\\\midrule
    xxx&$4.563$&$943$&$217$\\
    xxx&$0,03\%$&$0,12\%$&$0,54\%$\\
    xxx&$1,45\%$&$0,63\%$&$6,28\%$\\
    xxx&\multicolumn{1}{d}{$-0,09$}&\multicolumn{1}{d}{$-0,66$}&\multicolumn{1}{d}{$-0,87$}\\
    xxx&\multicolumn{1}{d}{$8,37$}&\multicolumn{1}{d}{$8,98$}&\multicolumn{1}{d}{$5,74$}\\
    \bottomrule
    \end{tabularx}
    \end{table}
    \end{document}
    Danke und Gruss,

    menuhin
    Geändert von menuhin (22-01-2010 um 20:43 Uhr)
    Linux Ubuntu 10.10, TeX Live 2010, Kile 2.1b4

  2. #2
    ctansearch
    Gast
    Wozu benutzt Du multicolumn[1] ?

    Das sagt doch nur, dass der Text über eine Spalte verteilt wird?

    Ohne multicolumn sieht die Tabelle erheblich besser aus

  3. #3
    Registrierter Benutzer
    Registriert seit
    30.06.2009
    Beiträge
    197
    Hi ctansearch,

    Ohne multicolumn sieht die Tabelle erheblich besser aus
    ja stimmt...aber ohne multicolumn weiß ich nicht wie man die letzten 2 Zeilen am Komma ausrichten kann. Dies möchte ich aber unbedingt.
    Linux Ubuntu 10.10, TeX Live 2010, Kile 2.1b4

  4. #4
    ctansearch
    Gast
    Da Du in den Zeilen so unterschiedliche Formate und Zeichen hast, glaube ich nicht, dass es dafür eine programmtechnische Mölichkeit gibt.

    Wenn die Tabelle nicht zu groß ist, könntest Du die Ausrichtung der Werte "manuell" mit
    \hspace{+/- WertEinheit}
    anpassen, aber das ist nur ne krumme Krücke.
    Aber vielleicht wissen andere einen besseren Rat.

  5. #5
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Hi,

    geschustert:
    Code:
    \documentclass{scrartcl}
    \usepackage{array,ragged2e,calc,booktabs}
    \usepackage{tabularx}
    \usepackage{dcolumn}
    \begin{document}
    \begin{table}[!ht]
    \small
    \renewcommand{\arraystretch}{1.5}
    \newcolumntype{C}{>{\Centering}X}
    \newcolumntype{d}{D{,}{,}{-1}}
    \begin{tabularx}{325pt}{@{}l@{\hspace{6mm}}C@{\hspace{-2mm}}C@{\hspace{4.5mm}}c@{}}
    \toprule 
    &\textbf{xxx}&\textbf{xxx}&\textbf{xxx}\\\midrule
    xxx&$4.563$&$943$&$217$\\
    xxx&\mbox{\llap{$0$},\rlap{$03\%$}}&$0,12\%$&$0,54\%$\\
    xxx&\mbox{\llap{$1$},\rlap{$45\%$}}&$0,63\%$&$6,28\%$\\
    xxx&\mbox{\llap{$-0$},\rlap{$09$}}&\multicolumn{1}{d}{$-0,66$}&\multicolumn{1}{d}{$-0,87$}\\
    xxx&\mbox{\llap{$8$},\rlap{$37$}}&\multicolumn{1}{d}{$8,98$}&\multicolumn{1}{d}{$5,74$}\\
    \bottomrule
    \end{tabularx}
    \end{table}
    \end{document}
    Gruß
    Marco

  6. #6
    ctansearch
    Gast
    Nein, das geht auch nicht gut, mechanicus.
    Ich glaube der Fehler ist mehr tabellenspezifisch.

    menuhin sollte für alle Werte das gleiche Format und dieselbe Stellenanzahl wählen und die Bezeichner seperat angeben (% . ,), zumal die inhaltliche Mischung von Point, Komma und Prozent auch nicht so sinnvoll erscheint.
    Code:
    \documentclass{scrartcl}
    \usepackage{array,ragged2e,calc,booktabs}
    \usepackage{tabularx}
    \usepackage{dcolumn}
    \begin{document}
    \begin{table}
    \begin{tabularx}{\textwidth}{XXXXXXXX}
    Name	&Wert&einh&Wert&einh	&Wert&einh \\
    xxx&$4.563$&mm	&$943.0$&mm&$217.0$	&mm      \\
    xxx&$4.563$&km	&$943.0$&\%&$217.0$	&mm      \\
    \end{tabularx}
    \end{table}
    \end{document}
    Geändert von ctansearch (22-01-2010 um 23:17 Uhr)

  7. #7
    Registrierter Benutzer
    Registriert seit
    30.06.2009
    Beiträge
    197
    Vielen Dank ctransearch und Marco, dein Vorschlag war super - ein richtig praktischer hack...bist ein guter "Schuster" ;D
    Geändert von menuhin (23-01-2010 um 08:24 Uhr)
    Linux Ubuntu 10.10, TeX Live 2010, Kile 2.1b4

Lesezeichen

Berechtigungen

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