Anbei meine großartige Test-Tabelle, die aus dem Kontext eines Dokumentes gerissen wurde. Wie ihr seht, ist es mir nicht gelungen, ein funktionierendes Minimalbeispiel zu erstellen. Zu meiner Verwunderung ist dieses Code trotzdem auswertbar.

Ich dachte bei S[table-format=1.3] steht das 1.3 für cm? Ich glaube ich liege hiermit total falsch oder?

Jetzt zu meiner Frage: "Wie kann ich die Tabelle auf die ganze Seite-Breite vergrößern/anpassen bzw. wie könnte ich die einzelnen Spalten mit einer breiten-Angabe versehen? Ich möchte weiterhin den Spaltentyp S verwenden. Danke. (Ich hab sicherheitshalber alle nicht verwendeten usepackages drinnen gelassen)

Open in Online-Editor
Code, hier editierbar zum Übersetzen:
\documentclass[11pt,a4paper,titlepage,bibtotoc]{scrreprt}
\usepackage{longtable}
\usepackage{tikz,booktabs}
\usepackage{mwe}
\usepackage{pdflscape}
\usepackage{graphicx}
\usepackage[english,ngerman]{babel}
\usepackage[scaled]{uarial}
\renewcommand*\familydefault{\sfdefault}
\usepackage[T1]{fontenc}
\usepackage{mdwlist}
\usepackage{listings}
\usepackage{textcomp}
\usepackage{lastpage}
\usepackage[automark,plainheadsepline,headsepline,footsepline,plainfootsepline]{scrpage2}
\usepackage{booktabs,caption}
\usepackage{caption}
\usepackage{tabularx}
\usepackage{varwidth}
\usepackage[copy-decimal-marker]{siunitx}
\def\tabularxcolumn#1{m{#1}}
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}m{#1}}
\newcommand{\ltab}{\raggedright\arraybackslash}
\newcommand{\ctab}{\centering\arraybackslash}
\newcommand{\rtab}{\raggedleft\arraybackslash}
\renewcommand*{\footfont}{\normalfont}
\renewcommand*{\headfont}{\normalfont}
\pagestyle{scrheadings}
\usepackage[latin1]{inputenc}
\usepackage[left=2.00cm, right=2.00cm, top=2.00cm, bottom=2.00cm,includeheadfoot]{geometry}
\renewcommand*\familydefault{\sfdefault}
\usepackage[automark,plainheadsepline,headsepline,footsepline,plainfootsepline]{scrpage2}
\setlength\LTleft{0pt}
\setlength\LTright{0pt}
\usepackage{hyperref}
\newcommand\tabrotate[1]{\rotatebox{90}{#1\hspace{\tabcolsep}}}
\ihead[{\includegraphics[height=14pt]{./Inputs/Daimler_Logo.png}}]{{\includegraphics[height=14pt]{./Inputs/Daimler_Logo.png}}}
\ohead[\Dep]{\Dep}
\ifoot[\jobname.pdf]{\jobname.pdf}
\cfoot[]{}
\ofoot[\pagemark~ / \hspace*{0.1mm} \pageref{LastPage}]{\pagemark~ / \hspace*{0.1mm} \pageref{LastPage}}
 
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

gefragt 23 Feb '16, 11:56

Tommy's gravatar image

Tommy
13347
Akzeptiert-Rate: 0%

bearbeitet 23 Feb '16, 11:57

1

Es sei ein weiteres Mal darauf hingewiesen, dass man für jede einzelne Frage ein einzelnes, darauf angepasstes Minimalbeispiel nach Anleitung erstellen sollte, indem eben nicht die ganzen unbenutzten Pakete noch drin sind! Dein Beispiel ist nicht einmal lauffähig, weil externe Dateien verwendet werden, die wir nicht haben.

(23 Feb '16, 12:47) saputello

table-format hat durchaus Auswirkungen auf die Breite der Tabellenspalte, allerdings anders als Du glaubst. Wie in der Anleitung zum Paket siunitx zu lesen ist, handelt es sich dabei um eine abkürzende Schreibweise für die Optionen table-figures-integer, table-figures-decimal und table-figures-exponent. Es werden also die Vor-, Nachkomma- und Exponentenstellen angegeben, für die eine Zahl formatiert werden soll. Damit beeinflussen diese Angaben nicht nur die Breite der Tabellenspalte, sondern auch die Position des Dezimalpunktes oder Dezimalkommas innerhalb der Spalte.

Folgendes Beispiel verdeutlicht die Auswirkungen:

Open in Online-Editor
Code, hier editierbar zum Übersetzen:
\documentclass[a3paper]{article}
\usepackage{siunitx}
\newcounter{integer}
\newcounter{decimal}
\begin{document}
\makeatletter
\setcounter{integer}{1}
\@whilenum \value{integer}<10 \do {%
\setcounter{decimal}{1}
\@whilenum \value{decimal}<10 \do {%
\texttt{table-format=\theinteger.\thedecimal}:
\fbox{\begin{tabular}{*3{S[table-format=\theinteger.\thedecimal]}}
1,0 & 2,0 & 3,0 \\
\end{tabular}}\par
\stepcounter{decimal}%
}%
\stepcounter{integer}
}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Vergleicht man hier beispielsweise den Eintrag für table-format=1.1 mit dem für table-format=9.9, so fällt auf, dass der letzte natürlich viel breiter ist:

1.1 vs. 9.9

Beim Vergleich von beispielsweise table-format=1.4 mit table-format=4.1 sind die Spalten ­­­– wie zu erwarten – gleich breit, die Position des Dezimalpunktes ist aber unterschiedlich:

1.4 vs. 4.1

Das Paket siunitx bietet übrigens viele weitere Optionen, um die Formatierung der S-Spalteninhalte zu verändern. Daher wird dringend empfohlen, dessen Anleitung näher zu studieren.

Natürlich kann man table-format (und weitere Optionen) nutzen, um die Breite einer Tabelle zu beeinflussen. Das ist jedoch eher ein Nebeneffekt der Formatierungsmöglichkeiten und nicht ihr eigentlicher Zweck. Will man bei einer Tabelle mit S-Spalten eine bestimmte Breite erreichen und enthält die Tabelle keine Spalten, die besser geeignet sind, die zusätzliche Breite zu erhalten, so bietet sich die Verwendung einer tabular*-Umgebung an, wie sie in Clemens Antwort auf eine frühere, allgemeinere Frage erklärt wird. Im Extremfall könnte dies beispielsweise mit:

Open in Online-Editor
Code, hier editierbar zum Übersetzen:
\documentclass[a4paper]{article}
\usepackage{siunitx}
\usepackage{showframe}
\begin{document}
\noindent\begin{tabular*}{\textwidth}{S@{\extracolsep{\fill}}*2S}
1,0 & 2,0 & 3,0 \\
1,0 & 2,0 & 3,0 \\
1,0 & 2,0 & 3,0 \\
\end{tabular*}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Das folgende, sehr unschöne Ergebnis liefern:

alt text

Hat man andere Spalten, beispielsweise Textspalten, die sehr gut die Restbreite erhalten könnten, so wäre eher eine tabularx passend, bei der man eben jene anderen Spalten als X-Spalten ausführt:

Open in Online-Editor
Code, hier editierbar zum Übersetzen:
\documentclass[a4paper]{article}
\usepackage{siunitx}
\usepackage{tabularx}
\usepackage{showframe}
\usepackage{mwe}
\begin{document}
\noindent\begin{tabularx}{\textwidth}{*3{S[table-format=1.1]}X}
1,0 & 2,0 & 3,0 & \blindtext \\
1,0 & 2,0 & 3,0 & \blindtext \\
1,0 & 2,0 & 3,0 & \blindtext \\
\end{tabularx}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

alt text

Es sei an dieser Stelle noch einmal darauf hingewiesen, dass tabularx nur mit X-Spalten sinnvoll ist. Außerdem sollte man vertikale Linien in Tabellen meiden und horizontale auf ein Mindestmaß reduzieren. Die Linien in obigen Beispielen stammen allesamt nicht von den Tabellen selbst, sondern dienen der Illustration der Tabellenbreite bzw. der Satzspiegelbreite.

Permanenter link

beantwortet 23 Feb '16, 13:10

saputello's gravatar image

saputello
11.1k174365
Akzeptiert-Rate: 51%

bearbeitet 23 Feb '16, 13:20

Deine Antwort
[Vorschau ausblenden]

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Frage-Themen:

×258

gestellte Frage: 23 Feb '16, 11:56

Frage wurde gesehen: 12,570 Mal

zuletzt geändert: 23 Feb '16, 13:20

Willkommen, erstes Mal hier? Schau mal unter FAQ!

×