PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabelle: farbig hinterlegte Zeilen unvollständig



grundoptimismus
24-09-2008, 07:55
Hallo,

ich würde gerne zwei Zeilen meiner Tabelle farbig hinterlegen und bin das so angegangen:


\documentclass[pdftex,a4paper,12pt]{scrreprt} %bibtotoc wenn Literatur im Inhalt, liststotoc für Tabellen- und Bildverzeichnis im Inhalt
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{longtable} %für lange tabellen und zeilenbrüche in tab
\usepackage[hang,small]{caption} %für eingerückte bildunterschriften
\usepackage{setspace} %für Zeilenabstand
\usepackage{rccol} %für Ausrichtung am Komma
\usepackage[table]{xcolor}

\definecolor{grau}{gray}{0.5}

\listfiles %damit packages im logfile aufgelistet werden

\begin{document}

\begin{longtable}{|l|R[,][,]{1}{2}|R[,][,]{2}{3}|}
\caption{blabla}
\label{bla}\\
\hline
\textbf{Oberfläche} & \multicolumn{1}{c|}{\textbf{Zementdicke}} & \multicolumn{1}{c|}{\textbf{Haftzugfestigkeit}}\\
as fired & 1,76 & 2,301\\
\cline{2-3}
& 2,23 & 6,259\\
\cline{2-3}
& 1,70 & 6,654\\
\cline{2-3}
& 1,82 & 5,660\\
\cline{2-3}
& 2,02 & 3,858\\
\cline{2-3}
\rowcolor{grau}
\multicolumn{1}{|r|}{\cellcolor{grau}MW} & 1,91 & 4,946\\
\rowcolor{grau}
\multicolumn{1}{|r|}{\cellcolor{grau}s} & 0,22 & 1,826\\
\hline
\end{longtable}

\end{document}


Allerdings erscheinen bei mir nur Teile der Zeile in grau (siehe angehängtes PDF). Was mache ich falsch?

Liebe Grüße,
Nadine

voss
24-09-2008, 08:24
ich würde gerne zwei Zeilen meiner Tabelle farbig hinterlegen und bin das so angegangen:

Allerdings erscheinen bei mir nur Teile der Zeile in grau (siehe angehängtes PDF). Was mache ich falsch?


gar nichts. rccol arbeitet intern mit multicolumn und deswegen geht es
in die Hose. Da du aber überall gleich viele Nachkommastellen hast,
ist eien Anwendung von rccol eh überflüssig, denn Ziffern haben immer
dieselbe Breite, sodass eine einfache c-Spalte reicht.


\documentclass[a4paper,12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{longtable} %für lange tabellen und zeilenbrüche in tab
\usepackage[hang,small]{caption} %für eingerückte bildunterschriften
\usepackage{setspace} %für Zeilenabstand
\usepackage{rccol} %für Ausrichtung am Komma
\usepackage[table]{xcolor}
\listfiles %damit packages im logfile aufgelistet werden

\begin{document}

\begin{longtable}{|l|c|c|}
\caption{blabla}\label{bla}\\\hline
\textbf{Oberfläche} & \multicolumn{1}{c|}{\textbf{Zementdicke}} & \multicolumn{1}{c|}{\textbf{Haftzugfestigkeit}}\\
as fired & 1,76 & 2,301\\\cline{2-3}
& 2,23 & 6,259\\\cline{2-3}
& 1,70 & 6,654\\\cline{2-3}
& 1,82 & 5,660\\\cline{2-3}
& 2,02 & 3,858\\\cline{2-3}
\rowcolor{gray!50}
\multicolumn{1}{|r|}{\cellcolor{gray!50}MW} & 1,91 & 4,946\\
\rowcolor{gray!50}
\multicolumn{1}{|r|}{\cellcolor{gray!50}s} & 0,22 & 1,826\\\hline
\end{longtable}

\end{document}

Die pdftex-Option solltest du weglassen. Und typografisch gesehen sind Farbe
und Linien zuviel des Guten. Man sollte imemr nur eiens von beiden
wählen.

Herbert

grundoptimismus
24-09-2008, 10:10
Hallo,

erstmal Danke für die Antwort. Schön, wenn ich nix falsch mache :)

Das Problem ist, dass ich rccol doch brauche, weil ich zwar immer gleich viele Nachkommastellen, aber nicht immer gleich viele Vorkommastellen habe (ist im Mini nicht ersichtlich, sorry). Bei einer einfachen c-Spalte sieht das dann nicht mehr so toll aus. Ich könnte die Spalten auch rechtsbündig machen, aber das sieht auch doof aus. Deswegen rccol...

Der Zeck dieser grauen Hinterlegung ist folgender: Ich hab gaaanz lange Tabellen, wo jeweils immer aus 5 Werten der Mittelwert und die Standardabweichung gebildet wird. Da ich dann immer mehrere solcher Blöcke in einer Tabelle hat, ergibt das eine ziemliche Zahlenkolonne. Deshalb wollte ich den MW und die s hervorheben. Erst hatte ich das Ganze nur kursiv, aber das funktioniert mit rccol nicht, da kommt eine 0,00 in die Spalte.

Naja, aber wenn sich die Farbe mit rccol auch net verträgt, muss ich mir irgendwie was anderes einfallen lassen...

Grüße,
Nadine

edico
24-09-2008, 11:23
... und wenn Du dcolumn Spalten heranziehst:



\documentclass[12pt]{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usepackage[table]{xcolor}
\usepackage[hang,small]{caption}
\usepackage{longtable,booktabs}
\usepackage{dcolumn}% \usepackage{rccol} % für Ausrichtung am Komma
\usepackage{setspace}
%\renewcommand{\arraystretch}{1.2}
%\setlength{\belowrulesep}{2pt}
%\setlength{\aboverulesep}{2pt}

\begin{document}
some text

\begin{longtable}{ l *{2}{D{,}{,}{-1}} }
\caption{blabla}
\label{bla}\\\toprule
\textbf{Oberfläche} &
\multicolumn{1}{c}{\textbf{Zementdicke}} &
\multicolumn{1}{c}{\textbf{Haftzugfestigkeit}}\\
as fired & 1,76 & 2,301\\%\cline{2-3}
& 12,23 & 36,259\\%\cline{2-3}
& 111,70 & 546,654\\%\cline{2-3}
& 18,82 & 25,660\\%\cline{2-3}
& 2,02 & 3,858\\\midrule
& & \\[-15pt]% dummy row
\rowcolor{gray!50}
\multicolumn{1}{r}{\cellcolor{gray!50}MW} & 10,91 & 400,946\\
\rowcolor{gray!50}
\multicolumn{1}{r}{\cellcolor{gray!50}s} & 0,22 & 1\,000,826\\\bottomrule
\end{longtable}

some text
\end{document}


edico

grundoptimismus
24-09-2008, 13:10
Mit \dcolumn funzt es :)

@voss: Wenn ich latin1 durch uft8 ersetze, dann werden die Umlaute nicht mehr erkannt und ich hab keine Lust jedes Mal \"a oder ähnliches zu schreiben. Deshalb lass ich lieber latin1 drin...

Vielen Dank euch beiden und liebe Grüße,
Nadine

mechanicus
24-09-2008, 19:00
Mit \dcolumn funzt es :)

@voss: Wenn ich latin1 durch uft8 ersetze, dann werden die Umlaute nicht mehr erkannt und ich hab keine Lust jedes Mal \"a oder ähnliches zu schreiben. Deshalb lass ich lieber latin1 drin...

Vielen Dank euch beiden und liebe Grüße,
Nadine

Du arbeitest mit Windows und Herbert mit Linux. Beide Systeme brauchen eine andere Codierung. Deswegen utf8 bzw latin1.

Gruß
Marco

grundoptimismus
25-09-2008, 08:20
Jut, das macht Sinn...

Grüße