PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ltxtable



Columbus
03-08-2005, 17:15
Hallo

Ich schreibe gerade an einer Praktikumsarbeit und im Anhang habe ich eine sehr lange Tabelle, welche über mehrere Seiten geht.

Die Tabelle funktioniert mit longtable, doch die Breite der Spalten geht über den Seitenrand hinaus. Aus diesem Grund habe ich mir die Dokumentation zu ltxtable angeschaut und werde nicht so recht schlau daraus. Wer kann mir da irgendwie weiterhelfen.

Columbus

pospiech
03-08-2005, 18:39
Viele, aber was ist jetzt genau dein Problem ?

Matthias

edico
03-08-2005, 18:57
... du musst an sich deine Frage schon praezise formulieren, damit der eine oder andere antworten kann. In den manpages wird alles beschrieben, das Inet ist voll davon.
Dennoch ist diese Kombination aus longtable und tabularx gewoehnungsbedürftig: Die Tabelle wird immer in einem separaten File geschrieben. Schau dir das lauffaehige Xmpl an und Xperimentier ein bisschen:
%
\begin{filecontents}{ltx1.tex} % diese Einbettung erfolgt aus Uebertragungsgruenden
\setlongtables
\begin{longtable}{|c|X|c|X|X|}\hline
1 & \textbf{Spalte 2} & \textbf{Spalte 3} & \textbf{Spalte 4}& \textbf{Spalte 5}\\\hline
\caption{TV-Evaluierung der Modelle}\label{TV-Evaluierung der Modelle}
\end{longtable}
\end{filecontents}

\documentclass[12pt]{article}
\usepackage{tabularx}
\usepackage{longtable}
\usepackage{ltxtable}

\begin{document}
\section*{LTXtable}
This is the combination of a longtable and a tabularx tabular.
The ltxtable.sty should be part of your local TeX system.
ltxtable reads the definition from an external file,
which can be written on the fly the filecontents command:

\LTXtable{\linewidth}{ltx1}
\end{document}
%
edico

Columbus
04-08-2005, 15:56
Mein Problem ist, dass ich bis keine konkreten Beispiele gefunden habe. Ich werde mir mal obiges Beispiel mit nach Hause nehmen und ausprobieren.

dodothegoof
21-06-2006, 19:08
Ich nutze mal diesen Thread für eine Frage:
Ich muss sagen ich blicke bei der Sache noch nicht ganz durch und ich vermute ich mache was falsch oder kombiniere Sachen die man nicht kombinieren kann.
So ist es eingebunden

\LTXtable{\textwidth}{DatQ} %Ich befürchte da ist der erste Fehler, kann das sein? Die Tabelle soll halt über die ganze Textbreite gehen.
Ich hatte zuvor nur tabularx, aber da wurde die Tabelle nun zu lang und aus diesem Grund will ich sie gewissermaßen um longtable "erweitern"


%\begin{table} <-- Das darf nicht hin, oder?
\begin{threeparttable}
\begin{longtable}{lllX}
%Beispielhaft drei Zeilen
Land & Daten&Zeitraum&Quelle\\
Australien & Gestorbene&2003&Human Mortality Database\tnote{a} (Stand Okt. 2005, Abruf 17.5.2006)\\
Korea (Rep.)&Bevölkerung u. Gestorbene&1983--2004&Korea National Statistic Office (Stand Mai 2006)
% Bei der Gelegenheit: Wie erzwinge ich zwischen "u." und "Gestorbene" einen Zeilenwechsel?
\end{longtable}
\begin{tablenotes}\footnotesize
\item{a} BlaBla
\end{tablenotes}
\end{threeparttable}
%\end{table}

RedCloud
21-06-2006, 19:25
Ich nutze mal diesen Thread für eine Frage:
Ich muss sagen ich blicke bei der Sache noch nicht ganz durch und ich vermute ich mache was falsch oder kombiniere Sachen die man nicht kombinieren kann.
So ist es eingebunden

\LTXtable{\textwidth}{DatQ} %Ich befürchte da ist der erste Fehler, kann das sein? Die Tabelle soll halt über die ganze Textbreite gehen.


was soll denn deiner Meinung nach daran falsch sein?



Ich hatte zuvor nur tabularx, aber da wurde die Tabelle nun zu lang und aus diesem Grund will ich sie gewissermaßen um longtable "erweitern"


%\begin{table} <-- Das darf nicht hin, oder?


Fließumgebungen und minipages können keinen Seitenumbruch aufweisen.

rc

dodothegoof
21-06-2006, 19:41
@RedCould
Ich hatte es zuerst befürchtet und dachte es wäre die Ursache für den Fehler, aber er lag dann wo anders. Ändert aber nichts am Ursprünglichen Problem, nämlich, dass die Tabelle keine Zeilenumbrüche macht, sondern alles nur in eine Zeile über den Rand der Seite hinaus schreibt.

RedCloud
21-06-2006, 20:56
@RedCould
Ich hatte es zuerst befürchtet und dachte es wäre die Ursache für den Fehler, aber er lag dann wo anders. Ändert aber nichts am Ursprünglichen Problem, nämlich, dass die Tabelle keine Zeilenumbrüche macht, sondern alles nur in eine Zeile über den Rand der Seite hinaus schreibt.

Ach, und ich soll jetzt wieder meine Kristallkugel rausholen, um dir zu sagen, dass LTXtable nur bei X-Spalten Sinn macht, während du l c oder r hast ....

rc

dodothegoof
21-06-2006, 23:18
Kannst deine Kristallkugel eingepackt lassen. Ich habe testweise {lllX} durch {XXXX} ersetzt und das Ergebnis ist noch schlechter. Nun ist die 2 Spalte kann an den Rand gerückt und die beiden andern Spalten liegen außerhalb des Papiers.

Falls es hilft, mein Header (heißt das so?):

\documentclass[12pt,a4paper]{scrreprt}
\usepackage[latin9]{inputenc}
\usepackage[paper=a4paper,left=3.5cm,right=2.5cm,top=2.5cm,bot tom=2cm]{geometry}
\usepackage{natbib}
\usepackage{url} %für das bessere Anzeigen von Internetadressen
\usepackage{indentfirst}
\usepackage{ngerman}
\usepackage[dvips]{graphicx}
\usepackage{eurosym}
\usepackage{setspace}
\usepackage{tabularx}
\usepackage{longtable}
\usepackage{ltxtable}
\usepackage{booktabs}
%\usepackage{capt-of}
\usepackage{threeparttable}
\usepackage{textcomp}
\usepackage[T1]{fontenc}
\usepackage{icomma}
\linespread{1.5}

RedCloud
22-06-2006, 05:56
Kannst deine Kristallkugel eingepackt lassen. Ich habe testweise {lllX} durch {XXXX} ersetzt und das Ergebnis ist noch schlechter. Nun ist die 2 Spalte kann an den Rand gerückt und die beiden andern Spalten liegen außerhalb des Papiers.


Wer hat denn von XXXX geredet? X ist eine dynamische Breite und das macht man für Spalten, wo die Breite egal ist. Wenn die Tabelle zu breit ist, muss man eben sehen, welche Spalten bei l,c oder l bleiben, welche man mit p{...} festlegt und welche X werden. Oder , wenn das alles nicht geht, muss man die Tabelle quer setzen.



Falls es hilft, mein Header (heißt das so?):

\documentclass[12pt,a4paper]{scrreprt}
\usepackage[latin9]{inputenc}
\usepackage[paper=a4paper,left=3.5cm,right=2.5cm,top=2.5cm,bot tom=2cm]{geometry}
\usepackage{natbib}
\usepackage{url} %für das bessere Anzeigen von Internetadressen
\usepackage{indentfirst}
\usepackage{ngerman}
\usepackage[dvips]{graphicx}
\usepackage{eurosym}
\usepackage{setspace}
\usepackage{tabularx}
\usepackage{longtable}
\usepackage{ltxtable}
\usepackage{booktabs}
%\usepackage{capt-of}
\usepackage{threeparttable}
\usepackage{textcomp}
\usepackage[T1]{fontenc}
\usepackage{icomma}
\linespread{1.5}

hast du hier alle Pakete eingebunden, die irgendetwas mit Tabellen zu tun haben??



\documentclass{article}
\usepackage{tabularx,ragged2e,booktabs}
\parindent=0pt
\begin{document}


\bgroup\tabcolsep=2pt
\begin{tabularx}{\linewidth}{@{}l>{\RaggedRight}p{2cm}l>{\RaggedRight}X@{}}
%Beispielhaft drei Zeilen
Land & Daten&Zeitraum&Quelle\\\toprule
Australien & Gestorbene&2003&Human Mortality Database a (Stand Okt. 2005, Abruf 17.5.2006)\\
Korea (Rep.)&Bevölkerung u. Gestorbene&1983--2004&Korea National Statistic Office (Stand Mai 2006)
% Bei der Gelegenheit: Wie erzwinge ich zwischen "u." und "Gestorbene" einen Zeilenwechsel?
\end{tabularx}
\egroup

\end{document}



rc

dodothegoof
22-06-2006, 09:37
Tut mir leid, das löst das Problem nicht, weil ich ja auch die Longtable-Umgebung brauche und eben da kommt es nicht zum Zeilenumbruch. Mache ich nur tabularx, dann funktioniert der Zeilenumbruch in der letzten Spalte, aber dann ist die Tabelle zu lang für eine DINA4-Seite und müsste auf der nächsten Seite fortgesetzt werden.
In Verbindung von tabularx über \LTXtable und \longtable sieht das Ergebnis so aus:
http://www.demillas-weine.de/SC4/TabProb.jpg

RedCloud
22-06-2006, 10:40
Tut mir leid, das löst das Problem nicht, weil ich ja auch die Longtable-Umgebung brauche und eben da kommt es nicht zum Zeilenumbruch. Mache ich nur tabularx, dann funktioniert der Zeilenumbruch in der letzten Spalte, aber dann ist die Tabelle zu lang für eine DINA4-Seite und müsste auf der nächsten Seite fortgesetzt werden.
In Verbindung von tabularx über \LTXtable und \longtable sieht das Ergebnis so aus:
http://www.demillas-weine.de/SC4/TabProb.jpg

kann ich nicht nachvollziehen:



\documentclass{article}

\begin{filecontents}{Tabelle.tex}
\tabcolsep=2pt
\begin{longtable}{@{}l>{\RaggedRight}p{2cm}l>{\RaggedRight}X@{}}
%Beispielhaft drei Zeilen
Land & Daten&Zeitraum&Quelle\\\hline
Australien & Gestorbene&2003&Human Mortality Database a (Stand Okt. 2005, Abruf 17.5.2006)\\
Korea (Rep.)&Bevolkerung u. Gestorbene&1983--2004&Korea National Statistic Office (Stand Mai 2006)
% Bei der Gelegenheit: Wie erzwinge ich zwischen "u." und "Gestorbene" einen Zeilenwechsel?
\end{longtable}
\end{filecontents}

\usepackage{ltxtable,ragged2e}
\parindent=0pt
\begin{document}

\bgroup
\LTXtable{\linewidth}{Tabelle}
\egroup

\end{document}



rc

dodothegoof
22-06-2006, 10:49
Ich denke ich habe den Schuldigen gefunden. Es ist das Command "\begin{threeparttable}" wenn ich das entferne, funktioniert es, das ist aber auch wieder keine zufriedendstellende Lösung. Ist es nicht möglich, das threeparttable-command trotzdem zu benutzen und ich habe es in diesem Falle einfach nur falsch eingebunden?