Seite 1 von 1

Tabelle entweder zentriert oder auf Seitenbreite angepasst

Verfasst: Fr 5. Okt 2018, 14:14
von sqk88025
Hallo,
ich habe das Problem, dass meine Tabelle entweder auf die Seitenbreite angepasst ist aber die Abstände zwischen den Wörtern nicht passen. Oder die Tabelle ist zentriert, ragt aber über den rand hinaus.
\begin{table}[]
	\caption{Name der Tabelle}
	\begin{tabularx}{\columnwidth}{|c|c|c|c|}		\hline
		\multirow{2}{*}{}				& \multicolumn{2}{c}{spannungsabh"angig} 											& \multirow{2}{*}{spannungsunabh"angig}  \\ \cline{2-3}
										& sofort auftretend 						& zeitabh"angig 						&  \\ \hline
		umkehrbar, reversibel 			& elastisch $\epsilon_{el}$					& verz"ogert elastisch $\epsilon_{v}$	& W"armedehnung $\epsilon_{T}$ Feuchtedehnung $\epsilon_{s}$  \\ \hline
		nicht umkehrbar, irreversibel 	& Flie"sen, plastisch $\epsilon_{pl}$		& Kriechen viskos $\epsilon_{kr}$		& chemische Dehnung  \\ \hline
	\end{tabularx}
\end{table}


oder
\begin{table}[]
	\caption{Name der Tabelle}
	\begin{tabularx}{\columnwidth}{|X|X|X|X|}
		\hline
		\multirow{2}{*}{}				& \multicolumn{2}{c}{spannungsabh"angig} 											& \multirow{2}{*}{spannungsunabh"angig}  \\ \cline{2-3}
										& sofort auftretend 						& zeitabh"angig 						&  \\ \hline
		umkehrbar, reversibel 			& elastisch $\epsilon_{el}$					& verz"ogert elastisch $\epsilon_{v}$	& W"armedehnung $\epsilon_{T}$ Feuchtedehnung $\epsilon_{s}$  \\ \hline
		nicht umkehrbar, irreversibel 	& Flie"sen, plastisch $\epsilon_{pl}$		& Kriechen viskos $\epsilon_{kr}$		& chemische Dehnung  \\ \hline
	\end{tabularx}
\end{table}
Ich möchte erreichen, dass die Tabelle sowohl auf die seitenbreite angepasst ist aber gleichzeitig der Inhalt der einzelnen Tabellenkästen jeweils zentriert ist.
Hat dazu jemand eine Idee?

Verfasst: Fr 5. Okt 2018, 14:27
von Bartman
Da Dein Beispiel unvollständig ist, habe ich eine Dokumentklasse meiner Wahl benutzt.

Mein Vorschlag:
\documentclass[captions=tableheading]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage{ragged2e}% für \Centering
\usepackage{showframe}

\begin{document}
\begin{table}
	\caption{Name der Tabelle}
	% siehe tabularx.pdf und https://texwelt.de/wissen/fragen/97
	\renewcommand{\tabularxcolumn}[1]{>{\hspace{0pt}\Centering}p{#1}}
	\begin{tabularx}{\columnwidth}{*4X}
	\toprule
	& \multicolumn{2}{c}{spannungsabh"angig} & spannungsunabh"angig\\
	\cmidrule(lr){2-3}
	& sofort auftretend & zeitabh"angig &\\
	\midrule
	umkehrbar, reversibel
	& elastisch $\epsilon_{\mathrm{el}}$ 
	& verz"ogert elastisch $\epsilon_v$   
	& W"armedehnung $\epsilon_T$ Feuchtedehnung $\epsilon_s$\\
	\addlinespace
	nicht umkehrbar, irreversibel
	& Flie"sen, plastisch $\epsilon_{\mathrm{pl}}$ 
	& Kriechen viskos $\epsilon_{\mathrm{kr}}$ 
	& chemische Dehnung\\
	\bottomrule
	\end{tabularx}
\end{table}
\end{document}

Verfasst: Fr 5. Okt 2018, 17:19
von sqk88025
Es funktioniert geradezu perfekt ! Vielen Dank. Gibt es eine Möglichkeit auch noch senkrechte Tabellenlinien einzufügen?

Verfasst: Fr 5. Okt 2018, 19:18
von Bartman
Man kann technisch gesehen die Befehle von booktabs mit senkrechten Linien kombinieren. Das Paket ist aber laut Anleitung dazu gedacht, ohne diese Linien auszukommen. Wenn Du senkrechte Linien einsetzen musst, dann wäre es besser, bei den \hline-Befehlen zu bleiben.

Probiere es aus und zeige uns das Ergebnis Deiner Bemühungen.

Verfasst: Sa 6. Okt 2018, 01:04
von sqk88025
so soll es aussehen:

Bild

macht es leider noch nicht . \vline bringt nicht das gewünschte ergebnis

Verfasst: Sa 6. Okt 2018, 02:14
von Bartman
Wo ist das Beispiel, in welchem Du mit \vline arbeitest?
\documentclass[captions=tableheading]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\usepackage{multirow}
\usepackage{showframe}

\begin{document}
\begin{table}
	\caption{Name der Tabelle}
	\footnotesize
	\renewcommand{\arraystretch}{1.4}
	\renewcommand{\tabularxcolumn}[1]{>{\centering\arraybackslash}m{#1}}
	\newcommand{\thead}[1]{\textbf{#1}}
	\newcolumntype{C}{>{\centering}m{3cm}}
	\begin{tabularx}{\columnwidth}{
		|>{\bfseries}X
		|C|C
		|X|
	}
	\hline
	& \multicolumn{2}{c|}{\thead{spannungsabh"angig}} 
	& \multirow{2}{*}{\thead{spannungsunabh"angig}}\\
	\cline{2-3}
	& \thead{sofort auftretend} & \thead{zeitabh"angig} &\\
	\hline
	umkehrbar, reversibel
	& elastisch\linebreak $\epsilon_{\mathrm{el}}$ 
	& verz"ogert elastisch\linebreak $\epsilon_v$   
	& W"armedehnung $\epsilon_T$ Feuchtedehnung $\epsilon_s$\\
	\hline
	nicht umkehrbar, irreversibel
	& Flie"sen, plastisch\linebreak $\epsilon_{\mathrm{pl}}$ 
	& Kriechen viskos\linebreak $\epsilon_{\mathrm{kr}}$ 
	& chemische Dehnung\\
	\hline
	\end{tabularx}
\end{table}
\end{document}

Verfasst: Sa 6. Okt 2018, 13:34
von sqk88025
Hallo, es funktioniert schon fast perfekt. Danke für die vielen Feinheiten die du angepasst hast. So weit war ich noch gar nicht :D

Leider ist hier meine Seitebreite zu schmal, sodass das Wort immer über den Tabellenrand hinaus ragt. Mit \newline oder \\ oder \linebreak möchte er aber keine neu Zeile beginnen, selbst wenn ich das Wort manuell trenne. Kann ich ihm irgendwie mitteilen, das dieses Tabellenfeld auch aus zwei Zeilen bestehen kann?
	& \multirow{2}{*}{\thead{spannungs-\newline unabh"angig}}\\
Bild

Verfasst: Sa 6. Okt 2018, 13:56
von Bartman
& \multirow{2}{*}{\parbox{\linewidth}{\centering\thead{spannungs"-unabh"angig}}}\\

Verfasst: Sa 6. Okt 2018, 15:41
von sqk88025
Erste Sahne! Läuft. Vielen Dank