Letzte Spalte passt nicht auf Seite Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


ninastr
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Sa 24. Jul 2021, 11:12

Letzte Spalte passt nicht auf Seite

Beitrag von ninastr »

Hallo zusammen,

ich habe ein Problem mit meiner Tabelle an dem ich jetzt schon einige Zeit herumprobiere, aber zu keiner Lösung komme. Und zwar ist meine Tabelle zu breit, heißt eine Spalte befindet sich außerhalb meiner Seitenränder. Hier mein Code:

\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage{titlesec}
\titleformat{\chapter}
  {\normalfont\huge\bfseries}{\thechapter}{1em}{}
\titlespacing*{\chapter}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
\usepackage{appendix}
\usepackage[a4paper, left=30mm, right=30mm, top=25mm, bottom=25mm]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage{graphicx}
\graphicspath{{images/}}
\usepackage[backend=biber,style=apa,autocite=inline]{biblatex}
\addbibresource{References.bib}
\usepackage{floatrow}
\floatsetup[table]{capposition=top}
\usepackage{caption}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage[group-separator={.}]{siunitx}
\usepackage{multicol}
\usepackage{multirow}
\usepackage[flushleft]{threeparttable}
\usepackage{ulem}
\usepackage{tabularx}

\counterwithout{table}{chapter}
\begin{document}
\footnotesize
\begin{table}[ht]
\setlength\tabcolsep{1pt} 
\footnotesize
\centering
\small
 \renewcommand{\arraystretch}{1.4}
\caption{Pearson correlation} \label{tab:title}
 \begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}l
                              S[table-format=-2.3]
                              S[table-format=3.3]
                              S[table-format=3.3]
                              {9}{S[table-format=-2.3]}@{}
                              }
\toprule
& {USDT} & {PAX} & {DGX} & {PAXG} & {DAI} & {WBTC} & {AMPL} & {BTC} & {LTC} & {EUR} & {JPY}\\
   \hline
   \hline
USDT & 1\\
PAX & -0.26 & 1\\ 
DGX & 0.04 & -0.01 & 1 \\
PAXG &  0.11 & -0.18 & 0.14 & 1\\
DAI & -0.09 & 0.13 & 0.1 & 0.1 & 1\\
WBTC & -0.07 & -0.2 & -0.01 & 0.10 & 0.00 & 1\\
AMPL & 0.09 & 0.04 & 0.03 & -0.04 & -0.02 & 0.33 & 1\\
BTC & 0.08 & -0.13 & 0.01 & 0.10 & -0.18 & 0.50 & 0.50 & 1\\
LTC & 0.00 & -0.17 & 0.06 & 0.15 & -0.10 & 0.44 & 0.55 & 0.80 & 1 \\
EUR & 0.07 & -0.12 & 0.07 & 0.48 & -0.07 & 0.11 & 0.10 & 0.17 & 0.29 & 1\\
JPY & 0.09 & -0.06 & 0.02 & 0.51 & 0.08 & -0.03 & 0.00 & 0.17 & 0.25 & 0.56 & 1\\
\hline
 \end{tabular}
\end{table}
\end{document}

Kann mir jemand helfen das Problem zu beheben?
Vielen Dank!

Zuletzt geändert von Stefan Kottwitz am Sa 24. Jul 2021, 12:05, insgesamt 2-mal geändert.
Grund: Code markiert sowie \begin{document} und \end{document}, damit der Code testbar ist

Grummelgast

Re: Letzte Spalte passt nicht auf Seite

Beitrag von Grummelgast »

Da du es leider versäumt hast, den Code korrekt als solchen zu markieren, kann ich ihn leider nicht online ausprobieren oder direkt editieren. Daher sei lediglich ohne Überprüfung der Machbarkeit erklärt, dass es durchaus zulässig sein kann, die Ränder für eine Tabelle mitzuverwenden. Auch das Drehen/Rotieren einer Tabelle ist möglich. Wie das mit pdflscape, rotating etc. geht, ist im Forum vielfach zu finden.

Ergänzend sei darauf hingewiesen, dass man \usepackage[utf8]{inputenc} schon seit Anfang 2018 nicht mehr benötigt. Für normale Anhänge genügt eigentlich auch die Anweisung \appendix. Ein Paket benötigt man für Anhänge nur, wenn man zusätzliche Features benötigt. Außerdem hat das Paket ulem die Nebenwirkung, dass normale Hervorhebungen plötzlich nicht mehr kursiv erfolgen, sondern durch Unterstreichung. Das betrifft teilweise auch das Inhaltsverzeichnis. Wie man das vermeidet, steht in der Anleitung. Ich empfehle, Unterstreichung insgesamt zu vermeiden. LaTeX kennt weit bessere Möglichkeiten, Text ein wenig hervorzuheben.

Übrigens bringt die Verwendung von tabular* gegenüber von tabular keinen Nutzen, wenn die Tabelle ohnehin schon zu breit ist. Auch sonst, sollte man Tabellenspalten eher nicht künstlich verbreitern. Die Lesbarkeit der Tabelle leider unter zu großen Spaltenabständen. Bezüglich der Lesbarkeit der Tabelle sei außerdem auf die Anweisungen \midrule und \bottomrule aus dem verwendeten Paket booktabs hingewiesen. Diese sind \hline in nahezu jeder Hinsicht überlegen.


Gute*r Gȧst*in

Re: Letzte Spalte passt nicht auf Seite

Beitrag von Gute*r Gȧst*in »

Wie bereits erwähnt, darf eine Tabelle oder Abbildung je nach Dokument schon einmal in den Rand ragen. Bei einem einseitigen Dokument würde ich dafür beide Ränder gleichermaßen nutzen. Das geht mit dem Befehl \centerline sehr einfach:

\documentclass[12pt]{report}
\usepackage[a4paper, left=30mm, right=30mm, top=25mm, bottom=25mm]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage{floatrow}
\floatsetup[table]{capposition=top}
\usepackage{caption}
\usepackage{booktabs}
\usepackage[group-separator={.}]{siunitx}

\counterwithout{table}{chapter}
\begin{document}
\footnotesize
\begin{table}[ht]
  \setlength\tabcolsep{1pt} 
  \footnotesize
  \centering
  \small
  \renewcommand{\arraystretch}{1.4}
  \caption{Pearson correlation} \label{tab:title}
  \centerline{%
    \begin{tabular}{l
      S[table-format=-2.3]
      S[table-format=3.3]
      S[table-format=3.3]
      *{9}{S[table-format=-2.3]}@{}
    }
    \toprule
    & {USDT} & {PAX} & {DGX} & {PAXG} & {DAI} & {WBTC} & {AMPL} & {BTC} & {LTC} & {EUR} & {JPY}\\
    \midrule
    USDT & 1\\
    PAX & -0.26 & 1\\ 
    DGX & 0.04 & -0.01 & 1 \\
    PAXG &  0.11 & -0.18 & 0.14 & 1\\
    DAI & -0.09 & 0.13 & 0.1 & 0.1 & 1\\
    WBTC & -0.07 & -0.2 & -0.01 & 0.10 & 0.00 & 1\\
    AMPL & 0.09 & 0.04 & 0.03 & -0.04 & -0.02 & 0.33 & 1\\
    BTC & 0.08 & -0.13 & 0.01 & 0.10 & -0.18 & 0.50 & 0.50 & 1\\
    LTC & 0.00 & -0.17 & 0.06 & 0.15 & -0.10 & 0.44 & 0.55 & 0.80 & 1 \\
    EUR & 0.07 & -0.12 & 0.07 & 0.48 & -0.07 & 0.11 & 0.10 & 0.17 & 0.29 & 1\\
    JPY & 0.09 & -0.06 & 0.02 & 0.51 & 0.08 & -0.03 & 0.00 & 0.17 & 0.25 & 0.56 & 1\\
    \bottomrule
    \end{tabular}%
  }
\end{table}
\end{document}

Alles definitiv am Problem unbeteiligte habe ich dabei weggelassen. Ebenso kann man mit pdflscape die Tabelle samt Beschriftung drehen:

\documentclass[12pt]{report}
\usepackage[a4paper, left=30mm, right=30mm, top=25mm, bottom=25mm]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage[position=above]{caption}
\usepackage{booktabs}
\usepackage[group-separator={.}]{siunitx}
\usepackage{pdflscape}

\counterwithout{table}{chapter}
\begin{document}
\begin{landscape}
  \setlength\tabcolsep{1pt} 
  \footnotesize
  \centering
  \small
  \renewcommand{\arraystretch}{1.4}
  \captionof{table}{Pearson correlation} \label{tab:title}
  \begin{tabular}{l
    S[table-format=-2.3]
    S[table-format=3.3]
    S[table-format=3.3]
    *{9}{S[table-format=-2.3]}@{}
  }
    \toprule
    & {USDT} & {PAX} & {DGX} & {PAXG} & {DAI} & {WBTC} & {AMPL} & {BTC} & {LTC} & {EUR} & {JPY}\\
    \midrule
    USDT & 1\\
    PAX & -0.26 & 1\\ 
    DGX & 0.04 & -0.01 & 1 \\
    PAXG &  0.11 & -0.18 & 0.14 & 1\\
    DAI & -0.09 & 0.13 & 0.1 & 0.1 & 1\\
    WBTC & -0.07 & -0.2 & -0.01 & 0.10 & 0.00 & 1\\
    AMPL & 0.09 & 0.04 & 0.03 & -0.04 & -0.02 & 0.33 & 1\\
    BTC & 0.08 & -0.13 & 0.01 & 0.10 & -0.18 & 0.50 & 0.50 & 1\\
    LTC & 0.00 & -0.17 & 0.06 & 0.15 & -0.10 & 0.44 & 0.55 & 0.80 & 1 \\
    EUR & 0.07 & -0.12 & 0.07 & 0.48 & -0.07 & 0.11 & 0.10 & 0.17 & 0.29 & 1\\
    JPY & 0.09 & -0.06 & 0.02 & 0.51 & 0.08 & -0.03 & 0.00 & 0.17 & 0.25 & 0.56 & 1\\
    \bottomrule
  \end{tabular}%
\end{landscape}
\end{document}

Man kann auch nur die Tabelle mit den Möglichkeiten von graphicx rotieren:

\documentclass[12pt]{report}
\usepackage[a4paper, left=30mm, right=30mm, top=25mm, bottom=25mm]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage{graphicx}
\usepackage[position=above]{caption}
\usepackage{booktabs}
\usepackage[group-separator={.}]{siunitx}

\counterwithout{table}{chapter}
\begin{document}
\begin{table}
  \setlength\tabcolsep{1pt} 
  \footnotesize
  \centering
  \small
  \renewcommand{\arraystretch}{1.4}
  \caption{Pearson correlation} \label{tab:title}
  \rotatebox{90}{\begin{tabular}{l
    S[table-format=-2.3]
    S[table-format=3.3]
    S[table-format=3.3]
    *{9}{S[table-format=-2.3]}@{}
  }
    \toprule
    & {USDT} & {PAX} & {DGX} & {PAXG} & {DAI} & {WBTC} & {AMPL} & {BTC} & {LTC} & {EUR} & {JPY}\\
    \midrule
    USDT & 1\\
    PAX & -0.26 & 1\\ 
    DGX & 0.04 & -0.01 & 1 \\
    PAXG &  0.11 & -0.18 & 0.14 & 1\\
    DAI & -0.09 & 0.13 & 0.1 & 0.1 & 1\\
    WBTC & -0.07 & -0.2 & -0.01 & 0.10 & 0.00 & 1\\
    AMPL & 0.09 & 0.04 & 0.03 & -0.04 & -0.02 & 0.33 & 1\\
    BTC & 0.08 & -0.13 & 0.01 & 0.10 & -0.18 & 0.50 & 0.50 & 1\\
    LTC & 0.00 & -0.17 & 0.06 & 0.15 & -0.10 & 0.44 & 0.55 & 0.80 & 1 \\
    EUR & 0.07 & -0.12 & 0.07 & 0.48 & -0.07 & 0.11 & 0.10 & 0.17 & 0.29 & 1\\
    JPY & 0.09 & -0.06 & 0.02 & 0.51 & 0.08 & -0.03 & 0.00 & 0.17 & 0.25 & 0.56 & 1\\
    \bottomrule
  \end{tabular}}%
\end{table}
\end{document}

Und auch das bereits erwähnte rotating kann nützlich sein:

\documentclass[12pt]{report}
\usepackage[a4paper, left=30mm, right=30mm, top=25mm, bottom=25mm]{geometry}
\usepackage{setspace}
\onehalfspacing
\usepackage{rotating}
\usepackage[position=above]{caption}
\usepackage{booktabs}
\usepackage[group-separator={.}]{siunitx}

\counterwithout{table}{chapter}
\begin{document}
\begin{sidewaystable}
  \setlength\tabcolsep{1pt} 
  \footnotesize
  \centering
  \small
  \renewcommand{\arraystretch}{1.4}
  \caption{Pearson correlation} \label{tab:title}
  \begin{tabular}{l
    S[table-format=-2.3]
    S[table-format=3.3]
    S[table-format=3.3]
    *{9}{S[table-format=-2.3]}@{}
  }
    \toprule
    & {USDT} & {PAX} & {DGX} & {PAXG} & {DAI} & {WBTC} & {AMPL} & {BTC} & {LTC} & {EUR} & {JPY}\\
    \midrule
    USDT & 1\\
    PAX & -0.26 & 1\\ 
    DGX & 0.04 & -0.01 & 1 \\
    PAXG &  0.11 & -0.18 & 0.14 & 1\\
    DAI & -0.09 & 0.13 & 0.1 & 0.1 & 1\\
    WBTC & -0.07 & -0.2 & -0.01 & 0.10 & 0.00 & 1\\
    AMPL & 0.09 & 0.04 & 0.03 & -0.04 & -0.02 & 0.33 & 1\\
    BTC & 0.08 & -0.13 & 0.01 & 0.10 & -0.18 & 0.50 & 0.50 & 1\\
    LTC & 0.00 & -0.17 & 0.06 & 0.15 & -0.10 & 0.44 & 0.55 & 0.80 & 1 \\
    EUR & 0.07 & -0.12 & 0.07 & 0.48 & -0.07 & 0.11 & 0.10 & 0.17 & 0.29 & 1\\
    JPY & 0.09 & -0.06 & 0.02 & 0.51 & 0.08 & -0.03 & 0.00 & 0.17 & 0.25 & 0.56 & 1\\
    \bottomrule
  \end{tabular}%
\end{sidewaystable}
\end{document}

Von der Verwendung einer noch kleineren Schrift wie tiny würde ich hingegen absehen. Die Tabelle würde damit unlesbar und damit nutzlos.


Wegweiser

Re: Letzte Spalte passt nicht auf Seite

Beitrag von Wegweiser »

Ein Anfang wäre, den für die Zahlenwerte in den Spalten reservierten Platz zu reduzieren. Ich sehe keine einzige Zahl mit zwei Zahlen vor und drei hinter dem Komma ('table-format=-2.3'). Folglich sollte das Zahlenformat in allen Spalten mit 'table-format=-1.2' entsprechend angekündigt werden.


Grummelgast

Re: Letzte Spalte passt nicht auf Seite

Beitrag von Grummelgast »

Bei den gezeigten Zahlen würde für die letzten 5 Spalten sogar *4{S[table-format=1.2]}S[table-format=1.0] genügen. Ändert aber gegenüber S[table-format=-1.2] für alle Spalten wegen der Breite des Textes im Tabellenkopf nicht viel.


ninastr
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Sa 24. Jul 2021, 11:12

Re: Letzte Spalte passt nicht auf Seite

Beitrag von ninastr »

Vielen Dank!
('table-format=-1.2') hat geklappt und ich habe nun auch endlich verstanden wie man das ganze richtig anwendet!


Antworten