goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Spaltenbreite bei multicolumn

 

Jopo
Forum-Newbie
Forum-Newbie

Beiträge: 5
Anmeldedatum: 28.06.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.11.2018, 15:41     Titel: Spaltenbreite bei multicolumn
  Antworten mit Zitat      
Hallo,

ich bekomme es leider nicht hin, zwei Spalten mit der gleichen Breite zu erzeugen. Mein Beispiel sollte das Problem deutlich machen.
Die Spalten "links" und "rechts" sollen beide eigentlich die gleiche Breite besitzen. Also der "stricht", der diese beiden trennt soll in die mitte.

Code • Öffne in Overleaf

\documentclass{article}
\begin{document}

\begin{table}
   \centering
   \caption{Meine Tabelle}
   \begin{tabular}{|c|c|c|c|c|}
      \hline
      {} & \multicolumn{2}{c|}{Hier steht ein etwas l\"angerer Text} & \multicolumn{2}{c|}{Hier steht auch kein kurzer Text} \\
      Eine Nummer & Links & Rechts & Links & Rechts \\
      \hline
      1 & X & X & X & X\\
      2 & X & X & X & X\\
      3 & X & X & X & X\\
      4 & X & X & X & X\\
      \hline
   \end{tabular}
\end{table}

\end{document}
 
Private Nachricht senden Benutzer-Profile anzeigen

Bartman
Forum-Meister
Forum-Meister


Beiträge: 1420
Anmeldedatum: 16.07.09
Wohnort: Hessische Provinz
Version: ---
     Beitrag Verfasst am: 09.11.2018, 16:08     Titel:
  Antworten mit Zitat      
Wie wäre es damit?

Code • Öffne in Overleaf
\documentclass{article}
\usepackage{tabularx}
\usepackage{caption}% für den Abstand der Tabellenbeschriftung zur Tabelle
\usepackage{showframe}

\newcommand{\thead}[1]{\begin{tabular}[t]{c}#1\end{tabular}}

\begin{document}
\begin{table}
   \centering
   \caption{Meine Tabelle}
   \renewcommand{\tabularxcolumn}[1]{>{\centering\arraybackslash}p{#1}}% siehe tabularx.pdf
   \begin{tabularx}{\textwidth}{|c|*4{X|}}
      \hline
      & \multicolumn{2}{c|}{\thead{Hier steht ein etwas\\l\"angerer Text}}
      & \multicolumn{2}{c|}{\thead{Hier steht auch kein\\kurzer Text}} \\
      \cline{2-5}
      \thead{Eine\\Nummer} & Links & Rechts & Links & Rechts \\
      \hline
      1 & X & X & X & X\\
      2 & X & X & X & X\\
      3 & X & X & X & X\\
      4 & X & X & X & X\\
      \hline
   \end{tabularx}
\end{table}
\end{document}


Wenn Du booktabs nutzen darfst, dann empfehle ich, auf die senkrechten Striche zu verzichten.

In einer LaTeX-Einführung erfährst Du, unter welchen Bedingungen Du Umlaute im Quelltext eingeben kannst.

Zuletzt bearbeitet von Bartman am 09.11.2018, 21:33, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen

Jopo
Forum-Newbie
Forum-Newbie

Beiträge: 5
Anmeldedatum: 28.06.18
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.11.2018, 16:29     Titel:
  Antworten mit Zitat      
Bartman hat Folgendes geschrieben:
Wie wäre es damit?


Das ist genau das, was ich gesucht habe; super, dankesehr! Smile

Die neue Tabell erstreckt sich nun aber über die ganze Textbreite, also über die ganze Seite. Gibt's hier vielleicht noch einen kurzen Trick, die Tabelle nur auf die Breite zu schrumpfen, die auch wirklich benötigt wird?
Private Nachricht senden Benutzer-Profile anzeigen

Bartman
Forum-Meister
Forum-Meister


Beiträge: 1420
Anmeldedatum: 16.07.09
Wohnort: Hessische Provinz
Version: ---
     Beitrag Verfasst am: 09.11.2018, 17:05     Titel:
  Antworten mit Zitat      
Wenn die Tabelle wegen des Inhalts weniger als die Seitenbreite belegt:

Code • Öffne in Overleaf
\documentclass{article}
\usepackage{array}
\usepackage{caption}% für den Abstand der Tabellenbeschriftung zur Tabelle
\usepackage{showframe}

\newcommand{\thead}[1]{\begin{tabular}[t]{c}#1\end{tabular}}

\begin{document}
\begin{table}
   \centering
   \caption{Meine Tabelle}
   \newlength{\cellwidth}
   \settowidth{\cellwidth}{Rechts}% Der Text der breitesten Zelle bestimmt die Spaltenbreite der vier Spalten.
   \newcolumntype{C}{>{\centering\arraybackslash}p{\cellwidth}}
   \begin{tabular}{|c|*4{C|}}
      \hline
      & \multicolumn{2}{c|}{\thead{Hier steht\\ein etwas\\l\"angerer Text}}
      & \multicolumn{2}{c|}{\thead{Hier steht\\auch kein\\kurzer Text}} \\
      \cline{2-5}
      \thead{Eine\\Nummer} & Links & Rechts & Links & Rechts \\
      \hline
      1 & X & X & X & X\\
      2 & X & X & X & X\\
      3 & X & X & X & X\\
      4 & X & X & X & X\\
      \hline
   \end{tabular}
\end{table}
\end{document}


Zuletzt bearbeitet von Bartman am 09.11.2018, 21:26, insgesamt 2-mal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen

Stamm-
Gast

Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.11.2018, 17:09     Titel: Beliebige Längen
  Antworten mit Zitat      
Jopo hat Folgendes geschrieben:
[…] Gibt's hier vielleicht noch einen kurzen Trick, die Tabelle nur auf die Breite zu schrumpfen, die auch wirklich benötigt wird?

Da braucht es keinen Trick, nur etwas Wissen über (La)TeX-Längen. Die Breite der Tabelle ist auf \textwidth gesetzt. Vor solche Lägenparameter lassen sich auch Faktoren setzen, so dass mit 0.5\textwidth die Tabelle auf die Hälfte der Textbreite schrumpft. Variabler sind \linewidth und \columnwidth. Es lassen sich auch andere Breiten beispielsweise mit \hspace{10em} einstellen.

Neues Thema eröffnen Neue Antwort erstellen



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2018 goLaTeX.de