Automatischer Zeilenumbruch bei flexibler Spaltenbreite

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Automatischer Zeilenumbruch bei flexibler Spaltenbreite

von aelray » Do 1. Mär 2012, 12:57

Danke Xenara! Das Problem ist behoben. Ich habe auch noch an ein paar anderen Baustellen gefeilt und das Resultat ist mittlerweile ganz ansehnlich:
\documentclass{article}
\usepackage{booktabs}
\usepackage{latexsym}
\usepackage{tabularx}
\begin{document}
\begin{table}[!htb]

    \newcolumntype{Y}{>{\raggedright\arraybackslash}X}
    \newcolumntype{Z}{>{\centering\arraybackslash}X}
    \renewcommand{\arraystretch}{1.2}
\tiny{
\begin{tabularx}{\hsize}{@{}>{\hsize=2.5\hsize}Y
                           >{\hsize=0.025\hsize}Z
                           >{\hsize=2.8\hsize}Z
                           >{\hsize=0.025\hsize}Z
                           >{\hsize=0.025\hsize}Z
                           >{\hsize=2.8\hsize}Z
                           >{\hsize=0.025\hsize}Z
                           >{\hsize=0.025\hsize}Z
                           >{\hsize=2.8\hsize}Z
                           >{\hsize=0.025\hsize}Z
                           >{\hsize=0.025\hsize}Z}
\toprule
&\multicolumn {10}{c}{Directions of causality}\\
\cmidrule{2-11}
 & \multicolumn{2}{c}{Taxes $\rightarrow$ Unemployment} & & \multicolumn{2}{c}{Unemployment $\rightarrow$ Taxes} & & \multicolumn{2}{c}{Both} &  & \multicolumn{1}{c}{None} \\
 \cmidrule{2-3} \cmidrule{5-6} \cmidrule{8-9} \cmidrule{11-11}
 & \multicolumn{1}{c}{No.} &  Names &  & \multicolumn{1}{c}{No.} & Names &  &  \multicolumn{1}{c}{No.} & Names &  & \multicolumn{1}{c}{No.} \\
 \midrule
Levels & \multicolumn{1}{c}{6} & AUS, CAN, FIN, GER, NED, CH &  & \multicolumn{1}{c}{3} & BEL, FRA, USA &  & \multicolumn{1}{c}{2} & DEN, NZ &  & \multicolumn{1}{c}{9} \\
\addlinespace
1st Differences & \multicolumn{1}{c}{3} &  CAN, NED, UK & & \multicolumn{1}{c}{4} &  FRA, IRE, JAP, USA & & \multicolumn{1}{c}{1} & AUS & & \multicolumn{1}{c}{12} \\
\addlinespace
Giles' approach & \multicolumn{1}{c}{4} &  AUS, CAN, NED, UK & & \multicolumn{1}{c}{5} &  BEL, FRA, IRE, ITA, NZ & & \multicolumn{1}{c}{2} &  DEN, USA & & \multicolumn{1}{c}{9} \\
 \bottomrule
 \end{tabularx}
 }
 \end{table}
  \end{document}
Leider hab ich nun ein kleines Formatierungsproblem.Es gelingt mir nicht die Spalten "Names" möglichst ausgeglichen unterhalb der jeweiligen cmidrule zu setzen. Vor allem bei "Taxes --> Unemployment" und "Unemployment --> Taxes" ist noch recht viel Platz auf der rechten Seite, der sehr unschön aussieht. Bei "Both" ist das besser gelungen.Habt ihr eine Idee wie ich das für die ganze Tabelle hinbekomme?

Vielen Dank und Gruß,
aelray

von Xenara » Do 1. Mär 2012, 11:32

Der Text in der ersten Zeile ("Levels") wird nicht umbrochen, weil du keine Leerzeichen zwischen den Länderkennungen hast. Wenn du die einfügst, wird ordentlich umbrochen.

von aelray » Do 1. Mär 2012, 11:14

So ich habe die Tabelle nochmal überarbeitet, da ich annehme dass sich das tabularx-package nicht mit multicolumn-Befehlen verträgt. Also hab ich einige entfernt (nicht alle weil ich den Befehl in den ersten zwei Zeilen brauche). Leider wird der Text in den Länderspalten immer noch nicht umgebrochen. Hat jemand eine gute Idee?
\documentclass{article}
\usepackage{booktabs}
\usepackage{latexsym}
\usepackage{tabularx}
\begin{document}
\begin{table}[!htb]
\caption{}

    \newcolumntype{Y}{>{\raggedright\arraybackslash}X}
    \newcolumntype{Z}{>{\centering\arraybackslash}X}
    \renewcommand{\arraystretch}{1.2}
\footnotesize{
\begin{tabularx}{\hsize}{@{}>{\hsize=4.3\hsize}Y
                           >{\hsize=0.1\hsize}Y
                           >{\hsize=2.0\hsize}Y
                           >{\hsize=0.1\hsize}Y
                           >{\hsize=0.1\hsize}Y
                           >{\hsize=2.0\hsize}Y
                           >{\hsize=0.1\hsize}Y
                           >{\hsize=0.1\hsize}Y
                           >{\hsize=2.0\hsize}Y
                           >{\hsize=0.1\hsize}Y
                           >{\hsize=0.1\hsize}Y}
\toprule
&\multicolumn {10}{c}{Directions of causality}\\
\cmidrule{2-11}
 & \multicolumn{2}{c}{Taxes $\rightarrow$ Unempl.} & & \multicolumn{2}{c}{Unempl. $\rightarrow$ Taxes} & & \multicolumn{2}{c}{both} &  & none \\
 \cmidrule{2-3} \cmidrule{5-6} \cmidrule{8-9} \cmidrule{11-11}
 & \multicolumn{1}{c}{No.} &  \multicolumn{1}{c}{Names} &  & \multicolumn{1}{c}{No.} & \multicolumn{1}{c}{Names} &  &  \multicolumn{1}{c}{No.} & \multicolumn{1}{c}{Names} &  & \multicolumn{1}{c}{No.} \\
 \hline
Levels & 6 & AUS,CAN,FIN,GER,NED,CH &  & 3 & BEL,FRA,USA &  & 2 & DEN,NZ &  & 9 \\
1st Differences & 3 &  CAN, NED, UK & & 4 &  FRA, IRE, JAP, USA & & 1 & AUS & & 12 \\
Giles' approach & 4 &  AUS, CAN, NED, UK & & 5 &  BEL, FRA, IRE, ITA, NZ & & 2 &  DEN, USA & & 9 \\
 \bottomrule
 \end{tabularx}
 }
 \end{table}
  \end{document}

von aelray » Do 1. Mär 2012, 09:20

Morgen zusammen!

Wie sieht's aus? Hat niemand einen Lösungsvorschlag? Oder ist mein Anliegen zu umständlich formuliert? Braucht ihr noch weitere Informationen? Wäre euch sehr dankbar wenn ihr mir bei dieser Tabelle weiterhelfen könnt.

Viele Grüße,
aelray

Automatischer Zeilenumbruch bei flexibler Spaltenbreite

von aelray » So 26. Feb 2012, 23:27

Schönen Abend zusammen!

Ich möchte eine Tabelle erstellen, deren Spaltenbreite sich an die jeweilige Formatierung flexibel anpasst. Dafür habe ich den tabularx-Befehl verwendet und die Breite der Spalten mit Hilfe der hsize-Befehle flexibel definiert. Jetzt möchte ich den Spalten mit den Länderabkürzungen einen automatischen Zeilenumbruch einfügen. Leider finde ich dafür nicht den passenden Befehl. Für Hilfestellungen zu diesem Problem aber auch für allg. Anregung für die Tabelle bin ich sehr dankbar!

Grüße,
aelray

Hier der Tabellencode:
\documentclass{article}
\usepackage{booktabs}
\usepackage{latexsym}
\usepackage{tabularx}
\begin{document}
\footnotesize
\begin{table}[!htb]
\caption{}

    \newcolumntype{Y}{>{\raggedright\arraybackslash}X}
    \newcolumntype{Z}{>{\centering\arraybackslash}X}
    \renewcommand{\arraystretch}{1.2}
    
\begin{tabularx}{\hsize}{@{}>{\hsize=4.3\hsize}Y
    	                    >{\hsize=0.1\hsize}Z
    	                    >{\hsize=2.0\hsize}Z    
			>{\hsize=0.1\hsize}Z    
    	                    >{\hsize=0.1\hsize}Z        
    	                    >{\hsize=2.0\hsize}Z
			>{\hsize=0.1\hsize}Z        
    	                    >{\hsize=0.1\hsize}Z        
                            >{\hsize=2.0\hsize}Z    
			>{\hsize=0.1\hsize}Z    
                            >{\hsize=0.1\hsize}Z}                
\toprule
&\multicolumn {10}{c}{Directions of causality}\\
\cmidrule{2-11}
 & \multicolumn{2}{c}{Taxes $\rightarrow$ Unempl.} & & \multicolumn{2}{c}{Unempl. $\rightarrow$ Taxes} & & \multicolumn{2}{c}{both} &  & none \\
 \cmidrule{2-3} \cmidrule{5-6} \cmidrule{8-9} \cmidrule{11-11} 
 & \multicolumn{1}{c}{No.} &  \multicolumn{1}{c}{Names} &  & \multicolumn{1}{c}{No.} & \multicolumn{1}{c}{Names} &  &  \multicolumn{1}{c}{No.} & \multicolumn{1}{c}{Names} &  & \multicolumn{1}{c}{No.} \\
 \hline
 \multicolumn{1}{l}{Levels} & 6 & \multicolumn{1}{l}{AUS, CAN, FIN, GER, NED, CH} &  & 3 & \multicolumn{1}{l}{BEL, FRA, USA} &  & 2 & \multicolumn{1}{l}{DEN, NZ} &  & 9 \\
  \multicolumn{1}{l}{1st Differences} & 3 &  \multicolumn{1}{l}{CAN, NED, UK} & & 4 &  \multicolumn{1}{l}{FRA, IRE, JAP, USA} & & 1 & \multicolumn{1}{l}{AUS} & & 12 \\
 \multicolumn{1}{l}{Giles' approach} & 4 &  \multicolumn{1}{l}{AUS, CAN, NED, UK} & & 5 &  \multicolumn{1}{l}{BEL, FRA, IRE, ITA, NZ} & & 2 &  \multicolumn{1}{l}{DEN, USA} & & 9 \\
 \bottomrule
 \end{tabularx}
 \end{table}
 \end{document}
 

Nach oben