Tabelle korrigieren, die über den Seitenrand hinausläuft.
LaTeX-Tabellen überschreiten den Seitenrand, da Standard-Spaltentypen wie l, c und r Text nicht automatisch umbrechen. Du kannst breite Tabellen sauber mit automatisch umbrechenden Spalten in tabularx, reduziertem Spaltenabstand oder im Querformat lösen, ohne die Schriftgröße zu verzerren.
Die kurze Antwort: Ersetze tabular durch tabularx und verwende X-Spalten für Text, der umbrechen muss. Wenn die Tabelle viele kurze Zahlenspalten hat, reduziere den Standardabstand mit \setlength{\tabcolsep}{4pt} oder drehe die Tabelle mit sidewaystable ins Querformat.
Identifiziere, warum deine Tabelle überläuft
Tabellen laufen aus strukturellen Gründen über den rechten Rand. Nutze diesen Leitfaden, um die passende Lösung zu wählen, statt zu raten.
| Symptom | Ursache | Empfohlene Lösung |
|---|---|---|
| Einzelne Spalte ragt weit über den Rand hinaus | Sätze in Standard-Spaltentypen l, c oder r |
1. Text automatisch umbrechen mit tabularx oder p-Spalten
Standard-LaTeX-Spaltenspezifizierer behandeln Zellinhalte als einzelne, ungebrochene Zeilen. Wenn eine Zelle einen ganzen Satz enthält, setzt LaTeX diesen auf eine einzige horizontale Achse, die nachfolgende Spalten über den rechten Rand schiebt.
Die sauberste Abhilfe ist das Paket tabularx. Es führt den X-Spaltenspezifizierer ein, der sich ausdehnt, um die verbleibende Textbreite zu füllen, während lange Sätze automatisch auf mehrere Zeilen umgebrochen werden. Wenn du exakte Breiten statt automatischer Verteilung benötigst, gib feste Maße mit p{width} an.
Codebeispiele für umbrechende Spalten
Automatische Breitenberechnung mit tabularx
Setze die Tabellenbreite auf \textwidth. Der X-Spezifizierer berechnet den Platz, der nach dem Einpassen der Standardspalten übrig bleibt, und bricht Text sauber über mehrere Zeilen um.
\usepackage{tabularx} \begin{table}[htbp] \centering \begin{tabularx}{\textwidth}{l X X} \hline Method & Description & Expected Result \\ \hline Baseline & Standard model without data augmentations applied & Stable convergence \\ Proposed & Mixed training routine using synthetic datasets & Lower error rate \\ \hline \end{tabularx} \end{table}Feste Breiten mit p-Spalten
Wenn du tabularx nicht importieren möchtest, verwende p{width} in einer Standard-tabular-Umgebung. Füge das Paket array hinzu, um Text linksbündig auszurichten, statt ihn in schmalen Zellen unschön zu rechtfertigen.
\usepackage{array} \begin{tabular}{l >{\raggedright\arraybackslash}p{6cm} r} \hline Item & Description & Cost \\ \hline Service & Cloud compute hours including storage backups & $120 \\ \hline \end{tabular}
2. Leerraum und Überschriften verringern
Wenn Tabellen nur um 10 bis 30 Punkte überlaufen, bringen einfache typografische Anpassungen die Tabelle zurück in die Ränder, ohne die Spaltenstruktur zu ändern.
Spaltenabstand mit tabcolsep reduzieren
LaTeX fügt standardmäßig 6pt horizontalen Leerraum auf beiden Seiten jeder Spalte hinzu. In einer Tabelle mit zehn Spalten macht dieser Abstand allein 120pt horizontalen Platz aus. Reduziere ihn innerhalb der Tabellenumgebung, um Abstände zu verengen.
\begin{table}[htbp] \centering \setlength{\tabcolsep}{3.5pt} % Default is 6pt \begin{tabular}{llllllll} \hline ... & ... & ... & ... & ... & ... & ... & ... \\ \hline \end{tabular} \end{table}Überschriften mit makecell über Zeilen umbrechen
Datenspalten mit kleinen Zahlen dehnen sich oft weit aus, weil ihre Überschriften lang sind. Das Paket makecell erlaubt dir, manuelle Zeilenumbrüche in einzelnen Überschriften einzufügen.
\usepackage{makecell} % In your table row: \makecell{Average\\Runtime (s)} & \makecell{Peak Memory\\Usage (MB)} & \makecell{Final\\Accuracy (\%)}Schriftgröße lokal anpassen
Verringere die Tabellenschriftgröße leicht, indem du \small oder \footnotesize innerhalb der Tabellenumgebung platzierst. Wende dies niemals global im Dokument an. Halte die Größenangabe strikt innerhalb des Floats.
\begin{table}[htbp] \centering \small \begin{tabular}{lllll} \hline ... \\ \hline \end{tabular} \end{table}
3. Breite Tabellen in zweispaltigen und Querformat-Dokumenten
Komplexe wissenschaftliche Tabellen enthalten oft zu viele Daten für eine einzelne Spalte oder Hochformat-Seite. Nutze die Dokumentstruktur, um der Tabelle mehr Platz zu gewähren.
Beide Spalten in zweispaltigen Dokumenten spannen
Wenn du für ein IEEE-, ACM- oder Elsevier-Journal in einer zweispaltigen Vorlage schreibst, sind Standardtabellen auf \columnwidth beschränkt. Nutze table*, um beide Spalten über die gesamte Seitenbreite zu spannen.
\begin{table*}[t] \centering \begin{tabular}{llllllllll} \hline Trial & Metric A & Metric B & Metric C & Metric D & Metric E & Metric F & Metric G \\ \hline ... \\ \hline \end{tabular*} \end{table*}Tabelle ins Querformat drehen
Für außergewöhnlich breite Datensätze drehe die Tabelle mit sidewaystable aus dem Paket rotating um 90 Grad. Die Beschriftung und Tabelle drehen sich gemeinsam, während die Seitenausrichtung erhalten bleibt.
\usepackage{rotating} \begin{sidewaystable} \centering \caption{Broad experimental results across all sample sites} \begin{tabular}{llllllllllll} \hline ... \\ \hline \end{tabular} \end{sidewaystable}Die gesamte PDF-Seite drehen
Wenn der PDF-Reader die Seite selbst im horizontalen Format für die Bildschirmanzeige darstellen soll, umschließe die Tabelle mit dem Paket pdflscape, statt nur den Float zu drehen.
\usepackage{pdflscape} \begin{landscape} \begin{table}[htbp] \centering \begin{tabular}{llllllllllll} \hline ... \\ \hline \end{tabular} \end{table} \end{landscape}
4. Die moderne Lösung: tabularray
Das neuere Paket tabularray ersetzt ältere tabular-Hacks durch eine konsistente Syntax. Es trennt Formatierung von Daten, handhabt automatischen Umbruch mit X-Spalten nativ und erlaubt direkte vertikale und horizontale Ausrichtung, ohne array oder makecell zu laden.
Es funktioniert auch nahtlos innerhalb langer Tabellen, die sich über mehrere vertikale Seiten erstrecken müssen, während begrenzte Spaltenbreiten erhalten bleiben.
Eine saubere Tabelle mit tabularray schreiben
Einfache tabularray-Tabelle
Gib die Gesamtbreite mit width=\textwidth an und weise umbrechende Spalten mit X zu. Du kannst Ausrichtungsmarker in Klammern hinzufügen, wie X[2,l] für eine Spalte, die die doppelte proportionale Breite einnimmt und linksbündig ist.
\usepackage{tabularray} \begin{table}[htbp] \centering \begin{tblr}{ width = \textwidth, colspec = {l X[2,l] X[1,c] r}, hlines, } ID & Experiment Notes & Status & Score \\ 1 & Initial run showed minor calibration divergence & Validated & 94.2 \\ 2 & Repeated with temperature control enabled & Complete & 98.7 \\ \end{tblr} \end{table}
Warum resizebox dein letzter Ausweg sein sollte
Viele Forenbeiträge empfehlen, hartnäckige Tabellen in \resizebox{\textwidth}{!}{...} zu packen. Während dies die Tabelle zwingt, sofort zwischen die Seitenränder zu passen, erzeugt es schwere typografische Probleme.
Resizebox skaliert die Tabelle als beliebige Vektorgrafik, statt Text zu formatieren. Schriften schrumpfen auf inkonsistente Punktgrößen, horizontale Linien werden haarfein und Zahlen oft völlig unleserlich. Gutachter und Verlage lehnen Arbeiten mit skalierten Tabellen häufig ab.
Reserviere \resizebox strikt für Notfälle, wenn eine Frist in Minuten abläuft. Für finale Publikationen breche lange Sätze mit tabularx um oder reduziere Leerraum systematisch.
Fragen
Warum läuft meine Tabelle in Overleaf über den rechten Rand?
LaTeX-Tabellenspalten, die auf l, c oder r gesetzt sind, brechen keine Zeilen um. Jeder Text, den du eingibst, bleibt auf einer einzigen kontinuierlichen horizontalen Linie, was den Tabellenrand über die Seite hinaus schiebt, wenn der Text länger als die verbleibende Seitenbreite ist.
Wie lasse ich Text in Tabellenzellen automatisch umbrechen?
Lade das Paket tabularx und ersetze tabular durch tabularx{\textwidth}{...}. Verwende den X-Spaltenspezifizierer für jede Spalte, die beschreibende Sätze enthält. LaTeX berechnet dann die verbleibende Breite und bricht Zeilen natürlich um.
Kann ich resizebox verwenden, um eine breite Tabelle schnell zu korrigieren?
Probier dein eigenes Paper in Texeno aus.
Starte kostenlos, lade ein Projekt als .zip hoch und klicke auf „Neu kompilieren“. Upgrade, wenn du längere Kompilierungen brauchst.
Losschreiben