Probleme mit Tabellenüberschriften

Tabellen und Grafiken erstellen und anordnen


Jaffet
Forum-Anfänger
Forum-Anfänger
Beiträge: 32
Registriert: Mi 22. Jul 2020, 13:29

Probleme mit Tabellenüberschriften

Beitrag von Jaffet »

Hallo,

ich bin unzufrieden mit meiner Tabelle.

Bei Headline 1 muss ich manuell eine Silbentrennung erzwingen, weil sie nicht automatisch erzeugt wird. Wenn ich diesen Eingriff vornehme, wird Headline 1 etwas tiefer dargestellt, als die anderen Überschriften.

Wie ihr seht, werden Headline 2 und 3 auch nicht zentriert dargestellt, obwohl ich dies eigentlich mit dem Befehl \makecell[c]{...} erzwingen wollte.

Würde mir jemand helfen, die Tabelle in Ordnung zu bringen?
\documentclass{article}
\usepackage[a4paper,left=2cm, right=2cm, top=3cm,bottom=3cm]{geometry}
\usepackage[onehalfspacing]{setspace}
\setcounter{secnumdepth}{-1}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{tabularx}
\usepackage{makecell}
\usepackage{pdflscape}
\usepackage{array}
\begin{document}
	\begin{landscape}
	\begin{table}
		\centering
		\normalsize
		\begin{tabular}{|p{1cm}|p{8cm}|p{8cm}|p{1cm}|p{1cm}|p{1cm}|p{1cm}|}
			\hline
			\makecell[c]{\multirow{2}{1cm}{\textbf{Head\-line 1}}}&
			\makecell[c]{\multirow{2}{10cm}{\textbf{Headline 2}}}&
			\makecell[c]{\multirow{2}{10cm}{\textbf{Headline 3}}}&
			\makecell[c]{\multirow{2}{1cm}{\textbf{Headline 4}}} &
			\multicolumn{3}{c|}{\textbf{Headline 5}} \\ \cline{5-7}
			&
			&
			&
			&
			A&
			B&
			C\\
			\hline
			\makecell[c]{\parbox[0pt][4cm][c]{0cm}{1}}&
			\makecell[l]{
				Test Test Test\\
				Test Test Test \\
				Test
			}&
			&
			\makecell[c]{13.1}&
			\makecell[c]{3}&
			&
			\\
			\hline
			\makecell[c]{\parbox[0pt][8cm][c]{0cm}{2}}&
			\makecell[l]{
				\textbf{Test} \\
				Test Test Test\\
				Test Test Test\\
				Test Test Test
				\textbf{Test} \\
				Test Test Test\\
				Test Test Test\\
				Test Test Test
			}&
			&
			\makecell[c]{13.1}&
			\makecell[c]{3}&
			&
			\\
			\hline
		\end{tabular}
	\end{table}
	\end{landscape}	
\end{document}[attachment=0]Tabelle.pdf[/attachment]
Dateianhänge
Tabelle.pdf
(26.59 KiB) 51-mal heruntergeladen

gast.

Re: Probleme mit Tabellenüberschriften

Beitrag von gast. »

Mal ein genereller Tipp: Ich würde für Dokumente mit komplexen Tabellen immer tabularray verwenden. Das Paket vereint zig andere Tabellenpakete unter einer einheitlichen Schnittstelle. Man hat dann generell auch nur einen Ansprechpartner, wenn es ein Problem mit dem Paket gibt, statt dass man zig Tabellenpaketautoren zusammen bringen muss.

Außerdem sind Tabellen, die nur mit vertikalen Linien und ggf. großen horizontalen Abständen funktionieren, eigentlich eher schlecht zu lesen. Oftmals ist es sinnvoll, sich zu überlegen, ob eine andere Darstellung nicht möglich und vorteilhafter wäre. Die Anleitungen zu booktabs geben da ein paar Hinweise. Das Buch von Herbert Voss ebenfalls.

Das ist natürlich keine Lösung deines Problems. Es soll daher auch nur als Anregung verstanden werden.

esdd
Forum-Meister
Forum-Meister
Beiträge: 2561
Registriert: So 7. Feb 2010, 16:36

Re: Probleme mit Tabellenüberschriften

Beitrag von esdd »

"Headline 1" rutscht nach unten, weil es trotz des manuellen Umbruchs immer noch zu breit für die Tabellenzelle ist. Das Zentrieren von "Headline 2" und "Headline 3" funktioniert nicht, weil die Kombination mit `\multirow` das verhindert.

Vielleicht geht das folgende in die gewünschte Richtung:
\documentclass{article}
\usepackage[a4paper,hmargin=2cm, vmargin=3cm]{geometry}
\usepackage[onehalfspacing]{setspace}
\setcounter{secnumdepth}{-1}

\usepackage{array}
\usepackage{pdflscape}

\begin{document}
\begin{landscape}
  \begin{table}
    \renewcommand*{\arraystretch}{1.5}
    \centering
    \normalsize
    \begin{tabular}{|>{\centering}m{1.1cm}|*{2}{>{\raggedright}m{7.7cm}|}>{\centering}m{1.1cm}|*{3}{>{\centering}m{1cm}|}}
      \hline
        \hspace{0pt}\textbf{Headline 1}&
        \centering\textbf{Headline 2}&
        \centering\textbf{Headline 3}&
        \hspace{0pt}\textbf{Headline 4} &
        \multicolumn{3}{c|}{\textbf{Headline 5}}
      \tabularnewline\cline{5-7}
        &
        &
        &
        &
        A&
        B&
        C
      \tabularnewline\hline
        1&
        {Test Test Test\\Test Test Test \\Test}&
        &
        13.1&
        3
        &
        &
      \tabularnewline\hline
        2&
        {\textbf{Test}\\Test Test Test\\Test Test Test\\
          Test Test Test\textbf{Test}\\Test Test Test\\
          Test Test Test\\Test Test Test}&
        &
        13.1&
        3&
        &
      \tabularnewline
      \hline
    \end{tabular}
  \end{table}
\end{landscape}
\end{document}
oder ohne die vertikalen Linien dafür mit dem Paket booktabs
\documentclass{article}
\usepackage[a4paper,hmargin=2cm, vmargin=3cm]{geometry}
\usepackage[onehalfspacing]{setspace}
\setcounter{secnumdepth}{-1}

\usepackage{array}
\usepackage{booktabs}
\usepackage{pdflscape}

\begin{document}
\begin{landscape}
  \begin{table}
    \centering
    \normalsize
    \begin{tabular}{>{\centering}m{1.1cm}*{2}{>{\raggedright}m{7.7cm}}>{\centering}m{1.1cm}*{3}{>{\centering}m{1cm}}}
      \toprule
        \hspace{0pt}\textbf{Headline 1}&
        \centering\textbf{Headline 2}&
        \centering\textbf{Headline 3}&
        \hspace{0pt}\textbf{Headline 4} &
        \multicolumn{3}{c}{\textbf{Headline 5}}
      \tabularnewline\cmidrule{5-7}
        &
        &
        &
        &
        A&
        B&
        C
      \tabularnewline\midrule
        1&
        {Test Test Test\\Test Test Test \\Test}&
        &
        13.1&
        3
        &
        &
      \tabularnewline\midrule
        2&
        {\textbf{Test}\\Test Test Test\\Test Test Test\\
          Test Test Test\textbf{Test}\\Test Test Test\\
          Test Test Test\\Test Test Test}&
        &
        13.1&
        3&
        &
      \tabularnewline
      \bottomrule
    \end{tabular}
  \end{table}
\end{landscape}
\end{document}
Das Paket multicolumn hat übrigens nichts mit den Spalten in der Tabelle zu tun und wird für das Beispiel nicht benötigt.

Antworten