Tabelle mit multirow

Tabellen und Grafiken erstellen und anordnen


malo
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 51
Registriert: Di 9. Jun 2015, 21:29

Tabelle mit multirow

Beitrag von malo »

Hi,

ich habe bisher meine Tabellen immer nach diesem Muster gemacht.
Jetzt musste ich einmal mit \multirow arbeiten und das Ergebnis finde ich erst einmal nicht so schön. Erstens: Ich kann den Eintrag Haus 1 nicht in der Tabelle sehen. Zweitens: Gefällt es mir nicht, dass die Zeilen in dem \multirow Teil auch mit wechselnden Farben erscheinen. Da wäre eine einheitliche besser. Wie mach ich das denn am besten bzw. ist das überhaupt möglich ?
Wichtig ist aber erstmal, dass der Text in der Tabelle auftaucht,.



\documentclass[a4paper,12pt,draft]{scrreprt}
 

\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx,ragged2e}
\usepackage{helvet}
\usepackage[table,dvipsnames,svgnames]{xcolor}
\usepackage{booktabs}
%\usepackage{booktabs}

\usepackage{siunitx}

\usepackage{multirow}
%\usepackage{colortbl}
\usepackage{array}
\usepackage{tabularx}
%\colorlet{DOrange}{Orange}% mir fehlte deine Farbe
\begin{document}

\begin{table}[htb]
\centering
%\fontfamily{phv}

\fontfamily{ptm}\fontsize{10}{15pt}\selectfont
\rowcolors{2}{Grey!25}{}


\caption[]{}


\begin{tabularx}{\textwidth}{X|XXXXX@{\hspace{2pt}}%llllllllllll|l@{\hspace{2pt}}
   >{\RaggedRight}X@{2}}
\rowcolor{white!20!black!60}\rule[-2mm]{0mm}{6mm}\textcolor{white}{\bfseries} 
Wasserwerk & Brunnen & Geländehöhe [m ü. NHN] & FiOk \newline[m ü. NHN] & FiUk \newline[m ü. NHN]&Ruhewasser-spiegel \newline[m .ü. NHN]\\

\multirow{3}*{Haus 1}
		&1			& 38,2		&3,1	&-5,8&\\
		&2 			& 38,9		&-0,24	&-7,24 & 36,45 - 36\\
		& 3			& 38,3		& 0.7 & -7,3	&\\
	
\hline
\multirow{3}*{Haus 2}
		& 1			& 64,9		& 3,7 & -8,1&\\
		& 2 			& 65,5		& 10,5&0,5  & 48 - 47\\ 
		& 3			& 64,9		& 10,7 & 1,4 &\\
\end{tabularx}
\label{Brunnen}%wrrl
\end{table}%
\end{document}

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Ich persönlich bin ja kein Freund von multirow, deshalb hier eine kleine Alternative.
\documentclass[a4paper,12pt,draft,captions=tableabove]{scrreprt}


\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx,ragged2e}
\usepackage[table,dvipsnames,svgnames]{xcolor}
\usepackage{booktabs}

\usepackage{siunitx}

\usepackage{tabularx}
\newcommand{\Einheit}{m \"u.~NHN}
\newcolumntype{L}{>{\RaggedRight\hspace{0pt}}X}
\begin{document}

\begin{table}%[htb]
	\centering
	\caption[]{}
	\begin{tabularx}{\textwidth}{LLSSSL}
		\toprule
		Wasserwerk     & Brunnen & {Gelände"-höhe} & {FiOk}       & {FiUk}       & {Ruhewasserspiegel}  \\
		               &         & {[\Einheit]}    & {[\Einheit]} & {[\Einheit]} & {[\Einheit]}\\
 \midrule
		Haus 1         & 1       & 38,2            & 3,1          & -5,8         & 36,45 - 36\\
		               & 2       & 38,9            & -0,24        & -7,24        & \\
		               & 3       & 38,3            & 0.7          & -7,3         & \\
		\addlinespace
		Haus 2         & 1       & 64,9            & 3,7          & -8,1         & 48 - 47\\
		               & 2       & 65,5            & 10,5         & 0,5          & \\
		               & 3       & 64,9            & 10,7         & 1,4          & \\
		\bottomrule
	\end{tabularx}
	\label{Brunnen}
\end{table}%
\end{document}
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

malo
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 51
Registriert: Di 9. Jun 2015, 21:29

Beitrag von malo »

Das sieht um einiges besser aus. Danke dir
Ich hatte mich einfach für unterschiedliche Zeilenfarben entscheiden, weil ich teilweise recht lange Tabellen habe und man einfach die Zeilen immer schön im Blick hatte.
Das muss ja auch alles schön einheitlich sein.

Danke
Malo

malo
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 51
Registriert: Di 9. Jun 2015, 21:29

Beitrag von malo »

Ich muss jetzt doch mal fragen.

Was hat es hier mit dem {LLSSSL} auf sich.
 \begin{tabularx}{\textwidth}{LLSSSL}

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2466
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

L und S sind Spaltentypen. L wurde von Johannes_B erstellt
\newcolumntype{L}{>{\RaggedRight\hspace{0pt}}X}
und S wird durch das Laden des Pakets siunitx verfügbar gemacht. Das X ist ein Spaltentyp des Pakets tabularx.

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2466
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Ich habe das Beispiel von Johannes_B aufgegriffen und nach meinen Vorstellungen umgestaltet:
\documentclass[fontsize=12pt,captions=tableabove]{scrreprt}

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage{showframe} % Wie man sieht, wird tabularx in diesem Beispiel nicht gebraucht

\sisetup{locale=DE}

\newcommand{\Einheit}{[m ü.~NHN]}
\newcommand*{\Spaltenbeschriftung}[3]{
	\multicolumn{#1}{
    	>{\hspace{0pt}}p{#2}
	}{#3}
}

\begin{document}

\begin{table}
	\centering
	\caption{Brunnen}
	\label{Brunnen}
	\renewcommand{\arraystretch}{1.2}
	\begin{tabular}{llSSSr@{\,--\,}l}
	\toprule
	Wasserwerk & {Brunnen} & {Geländehöhe} & {FiOk}     & {FiUk}     & \Spaltenbeschriftung{2}{2.3cm}{Ruhewasserspiegel} \\
              &           & {\Einheit}    & {\Einheit} & {\Einheit} & \multicolumn{2}{l}{\Einheit}\\
	\midrule
   Haus 1     & 1         & 38,2          & 3,1        & -5,8       & 36,45 & 36\\
              & 2         & 38,9          & -0,24      & -7,24      & \multicolumn{1}{l}{} \\
              & 3         & 38,3          & 0.7        & -7,3       & \multicolumn{1}{l}{} \\[5mm]
   Haus 2     & 1         & 64,9          & 3,7        & -8,1       & 48    & 47\\
              & 2         & 65,5          & 10,5       & 0,5        & \multicolumn{1}{l}{} \\
              & 3         & 64,9          & 10,7       & 1,4        & \multicolumn{1}{l}{} \\
	\bottomrule
	\end{tabular}
\end{table}%
\end{document}
Natürlich könntest Du die letzten beiden Spaltentypen r und l jeweils durch ein S ersetzen, aber auch mit dem Einsatz der Optionen table-format oder table-number-alignment müsstest Du dann, z. B. bei einer natürlichen Zahl auf der linken Seite des Gedankenstriches, mit Abständen leben.

malo
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 51
Registriert: Di 9. Jun 2015, 21:29

Beitrag von malo »

Vielen Dank für eure Vorschläge.

Ich habe jetzt noch ein kleines Problem.
Und zwar habe ich in andern Tabellen Zahlen mit (plus/minus).
Das habe ich meistens mit \pm gemacht oder auch \num{3+-5.8}
Jetzt habe ich leider kein +- Zeichen mehr, nur die Zahl in einer Klammer.
\documentclass[a4paper,12pt,draft,captions=tableabove]{scrreprt}


\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx,ragged2e}
\usepackage[table,dvipsnames,svgnames]{xcolor}
\usepackage{booktabs}

\usepackage{siunitx}

\usepackage{tabularx}
\newcommand{\Einheit}{m \"u.~NHN}
\newcolumntype{L}{>{\RaggedRight\hspace{0pt}}X}
\begin{document}

\begin{table}%[htb]
   \centering
   \caption[]{}
   \begin{tabularx}{\textwidth}{LLSSSL}
      \toprule
      Wasserwerk     & Brunnen & {Gelände"-höhe} & {FiOk}       & {FiUk}       & {Ruhewasserspiegel}  \\
                     &         & {[\Einheit]}    & {[\Einheit]} & {[\Einheit]} & {[\Einheit]}\\
 \midrule
      Haus 1         & 1       & 38\pm2            & 3,1          & -5,8         & 36,45 - 36\\
                     & 2       & \num{3+-5.8}            & -0,24        & -7,24        & \\
                     & 3       & 38,3            & 0.7          & -7,3         & \\
      \addlinespace
      Haus 2         & 1       & 64,9            & 3,7          & -8,1         & 48 - 47\\
                     & 2       & 65,5            & 10,5         & 0,5          & \\
                     & 3       & 64,9            & 10,7         & 1,4          & \\
      \bottomrule
   \end{tabularx}
   \label{Brunnen}
\end{table}%
\end{document}
Zuletzt geändert von malo am Mi 15. Jun 2016, 19:00, insgesamt 1-mal geändert.

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2466
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Sieh Dir die Tabelle 28 und ihren Quelltext im Abschnitt 5.14 der Dokumentation von siunitx an.

malo
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 51
Registriert: Di 9. Jun 2015, 21:29

Beitrag von malo »

Danke nochmals für die ganze Hilfe.
Aber mit Siunitx werde ich einfach nicht so richtig warm

Ich habe versucht meine anderen Tabellen dem Style anzupassen, aber das gelingt mir nicht
Ersten richten sich die [S] Spalten alle zu weit nach rechts aus.
Zweitens verstehe ich nicht warum ich trotz allem immer noch zwei Dezimalstellen bekomme obwohl ich die nicht mal in die Tabelle schreibe.


\documentclass[a4paper,12pt,draft,captions=tableabove]{scrreprt}


\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx,ragged2e}
\usepackage[table,dvipsnames,svgnames]{xcolor}
\usepackage{booktabs}

\usepackage{siunitx}

\usepackage{tabularx}

\newcolumntype{L}{>{\RaggedRight\hspace{0pt}}X}
\begin{document}

\begin{table}%[htb]
   \centering
   \caption[]{}
\sisetup{
separate-uncertainty,table-align-uncertainty=true,table-figures-decimal=1,
table-format=1.1(1)
}

\begin{tabularx}{\textwidth}{LSSS}
\toprule
{bla}			&{Transekt 1} 		& {Transekt 2} 		& {Transekt 3} 		 \\
\midrule
P 		& 1.5+-0.1		&1.8+-0.38		&1.4+-0,07					\\
Fet 		& 14.1+-1,4 		&38+-5,8 		&10.7+-0,5						\\
Cat		& 35+-1,5	  	&181+-17  		&31+-13						\\
St			& 4.7+-1,7		&1,4+-0,07		&12.1+-0,85						\\
\addlinespace
O	& 12.1+-3 		& 38.2+-5.8 		&13.5+-6						\\
C:N			& 14,7+-0,4		&23.3+-2,6  		&13.5+-1,2						\\
jkk			& 32.2+-3		& 65.9			&						\\
\bottomrule



\end{tabularx}
\label{Ele}
\end{table}
\end{document}

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Stell dir vor du kannst mit einer Genauigkeit von .0001 Meter messen. Und dann gibst du eine Längenangabe an mit 1.0+-.0001 Meter an. Ist das sinnvoll?

Andererseits, kannst du mit einem Zollstock/Gliedermaßstab/Metermaß im Mikrometerbereich messen?

Es besteht durchaus ein Unterschied zwischen 1.0 Meter und 1.00000 Meter.
\documentclass[a4paper,12pt,draft,captions=tableabove]{scrreprt}


\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx,ragged2e}
\usepackage[table,dvipsnames,svgnames]{xcolor}
\usepackage{booktabs}

\usepackage{siunitx}

\usepackage{tabularx}

\newcolumntype{L}{>{\RaggedRight\hspace{0pt}}X}
\begin{document}

\begin{table}%[htb]
	\centering
	\caption[]{}
	\sisetup{
		separate-uncertainty,table-align-uncertainty=true,table-figures-decimal=1,
		table-format=3.2(2)
	}
	\begin{tabular}{lSSS}
		\toprule
		{bla}         &{Transekt 1}       & {Transekt 2}       & {Transekt 3}        \\
		\midrule
		P       & 1.5+-0.1      &1.8+-0.38      &1.4+-0,07               \\
		Fet       & 14.1+-1,4       &38+-5,8       &10.7+-0,5                  \\
		Cat      & 35+-1,5        &181+-17        &31+-13                  \\
		St         & 4.7+-1,7      &1,4+-0,07      &12.1+-0,85                  \\
		\addlinespace
		O   & 12.1+-3       & 38.2+-5.8       &13.5+-6                  \\
		C:N         & 14,7+-0,4      &23.3+-2,6        &13.5+-1,2                  \\
		jkk         & 32.2+-3      & 65.9         &                  \\
		\bottomrule
	\end{tabular}
	\label{Ele}
\end{table}
\end{document}
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Antworten