Ich versuche, mithilfe des siunitx
Pakets eine Tabelle zu erstellen. Allerdings ist jede Spalte mit einer großen Menge an Leerzeichen aufgefüllt. Durch Ändern tabcolsep
kann ich die Menge an Leerzeichen rechts in jeder Spalte reduzieren, aber ich kann die Menge an Leerzeichen links nicht ändern. Durch das Ändern table-column-width
wird nur ein Hbox-Überlauf verursacht, während die überschüssigen Leerzeichen erhalten bleiben.
Hier ist ein MWE:
\documentclass{article}
\usepackage{siunitx}
\usepackage{lscape}
\begin{document}
\setlength{\tabcolsep}{0.2em}
\begin{landscape}
\centerline{
\begin{tabular}{
S |
S |
S |
S |
S |
S |
S |
S |
S |
S |
S
}
3 & 3.20E+01 & 3.13E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 & 1.50E+01 & 6.67E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 \\
\end{tabular}
}%//centerline
\end{landscape}
\end{document}
Und hier ist die Version mit table-column-width
explizitem Satz:
\documentclass{article}
\usepackage{siunitx}
\usepackage{lscape}
\begin{document}
\setlength{\tabcolsep}{0.2em}
\begin{landscape}
\centerline{
\begin{tabular}{
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em] |
S[table-column-width=8em]
}
3 & 3.20E+01 & 3.13E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 & 1.50E+01 & 6.67E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 \\
\end{tabular}
}%//centerline
\end{landscape}
\end{document}
Bitte geben Sie an, wie Sie das Leerzeichen links neben jeder Zahl entfernen können, damit die Tabelle auf eine Seite passt. Vielen Dank.
Antwort1
Im Folgenden habe ich für alle Spalten das gleiche Format verwendet, wodurch es an kürzeren Zahlen wie den nichts Überflüssiges gibt 3
. Wenn du sie noch näher haben möchtest, passe das Format für jede Spalte einzeln an.
Das aktuelle Format 1.2e-1
bedeutet
1
Ziffer vor dem Dezimalzeichen2
Ziffern hinter dem Dezimalzeichene
braucht Platz-
braucht Platz1
Ziffer im Exponenten
AlsMico hat vorgeschlagenin Kommentaren: Um noch kleinere Abstände zu erhalten, können Sie diese tight-spacing=true
entweder als Option des siunitx
Pakets oder in der S
Spalte verwenden.
\documentclass{article}
\usepackage[tight-spacing=true]{siunitx}
\usepackage{lscape}
\begin{document}
\setlength{\tabcolsep}{0.2em}
\begin{landscape}
\centering
\begin{tabular}{
c|
*{10}{S[table-format=1.2e-1]|}
}
3 & 3.20E+01 & 3.13E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 & 1.50E+01 & 6.67E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 \\
\end{tabular}
\end{landscape}
\end{document}
Antwort2
Wir können auch mit den verschiedenen Zahlenformaten experimentieren: Einige haben einen negativen Exponenten, andere nicht. Wenn jeder Zelleninhalt repräsentativ für seine Spalte ist, führt dies zur zweiten Tabelle:
\documentclass{article}
\usepackage{siunitx}
\usepackage{lscape}
\begin{document}
\begin{landscape}
\centering
\setlength{\tabcolsep}{4pt}
\sisetup{table-format=1.2e-1,table-number-alignment=center}
\begin{tabular}{|l |*{10}{S|}}
3 & 3.20E+01 & 3.13E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 & 1.50E+01 & 6.67E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 \\
\end{tabular}
\vspace*{1cm}
\begin{tabular}{|l|S[table-format =1.2e1]|*{2}{S|}*{3}{S[table-format =1.2e1]|}*{2}{S|}*{2}{S[table-format =1.2e1]|}}
3 & 3.20E+01 & 3.13E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 & 1.50E+01 & 6.67E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 \\
\end{tabular}
\end{landscape}
\end{document}
Antwort3
Hier ist noch ein weiterer Vorschlag: (a) Verwenden Sie eine tabular*
Umgebung (mit einer Zielbreite von \textwidth
), (b) legen Sie die Optionen tight-spacing
und fest exponent-product={\mkern1mu\cdot}
(um Platz zu sparen), (c) entfernen Sie alle vertikalen Linien (immer noch um Platz zu sparen) und (d) verwenden Sie die table-format
Option, um die Mindestbreite für die Formatierung jeder Spalte festzulegen.
Bei dieser Konfiguration ist es möglicherweise nicht erforderlich, in den Querformatmodus zu wechseln, um die Tabelle zu setzen.
\documentclass{article}
\usepackage[margin=2.5cm]{geometry}
\usepackage{array,siunitx}
\newcolumntype{T}[1]{S[tight-spacing,
exponent-product={\mkern1mu\cdot},
table-format=1.2e#1]}
\begin{document}
\begingroup % localize the scope of the next instruction
\setlength{\tabcolsep}{0pt}
\noindent
\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}
l T{1} *{2}{T{-1}} *{3}{T{1}} *{2}{T{-1}} *{2}{T{1}} }
3 & 3.20E+01 & 3.13E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05
& 1.50E+01 & 6.67E-02 & 1.25E-01 & 3.75E+08 & 5.07E+05 \\
\end{tabular*}
\endgroup
\end{document}