Latex Tabelle über gesamte Seite, automatische Anpassung der Spaltenbreite

Tabellen und Grafiken erstellen und anordnen


Michaela
Forum-Newbie
Forum-Newbie
Beiträge: 1
Registriert: Mo 31. Jan 2022, 09:29

Latex Tabelle über gesamte Seite, automatische Anpassung der Spaltenbreite

Beitrag von Michaela »

Hallo zusammen,
ich habe ein Problem mit meinen Tabellen. Ich schaffe es trotz verschiedener Experimente nicht, dass die Tabellen die gesamte Seitenbreite ausfüllen, und die Spalten sich dabei automatisch (bezogen auf Inhalt und Gesamtbreite der Seite) "verteilen". Meine Daten befinden sich im csv Format und ich nutze das tabularx package.

Hier mein Beispiel:


\begin{table}
\centering
\noindent
\resizebox{\columnwidth}{!}{%
\begin{tabularx}{\columnwidth}{lcccX}
\toprule
\bfseries Patient & \bfseries Stage 1 & \bfseries Stage 2 & \bfseries Stage 3 & \bfseries Stage 4 \\\midrule
\csvreader[head to column names]{kapitel/kapitel4/daten/piccoco.csv}{}{\\\patient & \1 & \2 & \3 & \4}
\\
\bottomrule
\end{tabularx}
}
\caption[Beschriftung]{Beschriftung}
\label{piccocotabelle}
\end{table}

Ich weiß es sind hier Minimalbeispiele gewünscht, aber ich bin Latex Neuling und ich weiß nicht genau was ich dafür noch alles rausnehmen muss.

Vielen Dank für eure Hilfe!

ich meine ja nur

Re: Latex Tabelle über gesamte Seite, automatische Anpassung der Spaltenbreite

Beitrag von ich meine ja nur »

Es sind vollständige Minimalbeispiele gewünscht, damit wir das Problem nachvollziehen können. Das ist bei deinem Codeschnipsel derzeit nicht wirklich der Fall. Es ist außerdem gewünscht, Code korrekt als solchen zu markieren, damit einerseits du ihn noch einmal im Online-Compiler checken (und ggf. deine Frage zwecks Korrektur editieren) kannst, und andererseits wir unsere Ideen daran direkt testen können, selbst wenn wir gerade keine lokale TeX-Installation zur Verfügung haben.

Derzeit kann ich zu deinem Code nur sagen, dass die \resizebox keinen Sinn ergibt, weil die Breite bereits durch die tabularx bestimmt wird. Daher sollte sie weggelassen werden. Ansonsten sei in deinem eigenen Interesse empfohlen, beide Links in diesem Kommentar sorgfältig zu beachten. Es ist eigentlich nicht sehr schwer, diese Informationen im Forum zu finden. Es gibt sie massenhaft.

Schimmelpilz
Forum-Century
Forum-Century
Beiträge: 133
Registriert: Sa 3. Aug 2013, 20:08

Re: Latex Tabelle über gesamte Seite, automatische Anpassung der Spaltenbreite

Beitrag von Schimmelpilz »

Also mit dem Satz der Tabelle kann ich dir erstmal hiermit weiterhelfen:
\documentclass[]{scrreprt}
\usepackage{tabularx}
\usepackage[hidelinks]{hyperref}
\usepackage{cleveref}

\begin{document}
	\begin{figure}
		\centering
		\begin{tabularx}{\textwidth}{XXXXX}
			\hline
			\bfseries Patient & \bfseries Stage 1 & \bfseries Stage 2 & \bfseries Stage 3 & \bfseries Stage 4 \\\hline
			Dies & das & Ananas & Und & so \\
			weiter & und & so & fort & Punkt \\ \hline
			%\csvreader[head to column names]{kapitel/kapitel4/daten/piccoco.csv}{}{\\\patient & \1 & \2 & \3 & \4}\\
			%%% 
		\end{tabularx}
	\caption{Beschriftung}\label{tab:piccocotabelle}
	\end{figure}
	
	Hier: \cref{tab:piccocotabelle} steht ein Link zur Tabelle.
\end{document}
Wie Du die Daten aus deiner .csv einliest, kann ich dir nicht sagen. Möglicherweise kannst du sie dir als '&-separated' ausgeben lassen? Oder selber eintragen, wenn es nicht allzu viele sind. In jedem Fall wird \csvreader wohl ein weiteres Paket benötigen.
Das Minimalbeispiel sollte im besten Fall aein vollständiges Dokument erzeugen.

Grüße SchiPi
Zuletzt geändert von Schimmelpilz am Mo 31. Jan 2022, 11:27, insgesamt 1-mal geändert.

ich meine ja nur

Re: Latex Tabelle über gesamte Seite, automatische Anpassung der Spaltenbreite

Beitrag von ich meine ja nur »

Es ist übrigens normalerweise gar nicht wünschenswert, eine Tabelle zwangsweise auf die Breite der Seite zu dehnen, wenn schmalere Spalten genügen würden. Dadurch entstehen ja ggf. große Abstände zwischen den Spalten. Das reduziert die Lesbarkeit erheblich und erhöht die Gefahr, dass man von Spalte zu Spalte in der Zeile verrutscht deutlich. Man sollte beim Design von Tabellen immer darauf achten, dass die Hauptleserichtung normalerweise horizontal ist und diese nicht durch die Darstellung behindert wird. Das ist ja auch der Grund, warum vertikale Linien nicht gerne gesehen werden.

Antworten