Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 24

Thema: \ctable und Fussnoten

  1. #1
    Registrierter Benutzer
    Registriert seit
    25.07.2010
    Beiträge
    31

    \ctable und Fussnoten

    Hallo zusammen

    ich habe mit \ctable ein Problem bei mehrzeiligen Fussnoten. Die Nummer setzt er immer auf die letzte Zeile der entsprechenden Fussnote. Wie kriege ich das auf die erste Zeile?

    Ich hab all meine Pakete, die ich lade, oben aufgelistet, damit eventuelle Störungen der Pakete untereinander erkannt werden können. Ich habe zwar versucht, meine benutzten Pakete zu säubern und nur das wichtigste zu nehmen, aber wahrscheinlich liegt dort der Fehler.

    Vielen Dank für eure Hilfe! Ich freue mich natürlich auch über Verbesserungsvorschläge, die den Rest des Beispiels betreffen.

    Grüsse aus der Schweiz

    Martin



    mein Minimalbeispiel:
    Code:
    \documentclass[11pt,DIV=calc,parskip=half,titlepage,toc=listof,numbers=noendperiod]{scrreprt}
    
    \usepackage[latin1]{inputenc} 
    \usepackage[T1]{fontenc} 
    \usepackage{lmodern}
    \usepackage[english,ngerman]{babel}
    
    %\usepackage{lmodern}
    \renewcommand\rmdefault{lun}
    \renewcommand{\familydefault}{\sfdefault}
    \addtokomafont{caption}{\footnotesize} %Bildunterschrift wird footnotesize gewählt
    
    \usepackage{ragged2e}
    \RaggedRight
    
    \usepackage{mathptmx}
    \usepackage[scaled]{helvet}
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Seitenlayout
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \KOMAoptions{DIV=last,cleardoublepage=empty}
    
    %hier können die Seitenränder definiert werden, und dass doppelseitig ausgedruckt wird
    \usepackage[left=2.5cm,right=1.7cm,top=1cm,bottom=2.8cm,includehead,headsep=1.3cm]{geometry} 
    
    %\geometry{showframe}
    
    %setzt das gesamte Dokument auf eineinhalb zeiligen Abstand
    \usepackage[onehalfspacing]{setspace}
    
    %hier werden die Kopf- und Fusszeile definiert
    \usepackage[headsepline,automark]{scrpage2}
    
    %damit die gesamte Anzahl Seiten angegeben werden kann
    \usepackage{lastpage}
    
    %ändert die Schrift in der Kopfzeile und Fusszeile
    \setkomafont{pageheadfoot}{\small\sffamily} 
    \setkomafont{captionlabel}{\bf}
    %\setkomafont{pagefoot}{\small\sffamily} % ändert die Schrift in der Fusszeile
    
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Packete
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    % Bilder
    \usepackage{graphicx}
    
    % Diverse Packete
    \usepackage{enumerate} % Nummerierung kann beliebig angepasst werden (z.B. a) b) etc.)
    
    % diverse
    \usepackage{picinpar}
    \usepackage{fancybox,color}
    \usepackage{delarray}
    \usepackage{eso-pic}
    \usepackage{multicol}
    \usepackage{colortbl}
    \usepackage{tabularx}
    \usepackage{tabulary}
    \usepackage{longtable}
    \usepackage{array}
    \usepackage[german]{varioref}
    \usepackage[format=hang,justification=raggedright,]{caption}
    \usepackage{ctable}
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %Abkürzungsverzeichnis
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \usepackage[printonlyused]{acronym}
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Tabelle (tabularx): Anstatt X verwende ich Y um zusätzlich zu X noch den Text zu zentrieren
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \renewcommand{\tabularxcolumn}[1]{b{#1}} %in Tabularx-Umgebung den Text unten ausrichten
    \newcolumntype{Z}{>{\raggedleft\arraybackslash}X}
    
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Änderungen im Literaturverzeichnis
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \usepackage{url}
    
    \usepackage[style=authoryear,language=german]{biblatex}
    \usepackage[german=quotes]{csquotes}
    
    \NewBibliographyString{url}
    
    \DefineBibliographyStrings{german}{%
    andothers = {{et\,al\adddot}},
    editor = {(Hrsg.)},
    editors = {(Hrsg.)}}
    
    \urlstyle{same}
    
    \setlength{\bibhang}{1.5em}
    \setlength{\bibitemsep}{0.5em}
    
    
    \bibliography{literatur}
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %Fussnoten anpassen
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \deffootnote[1em]{1em}{1em}{\textsuperscript{\thefootnotemark}} %Einrücken auf zweiter Zeile einer Fussnote wird verhindert
    \usepackage{chngcntr} 
    \counterwithout{footnote}{chapter}
    
    
    
    
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    % Mathematik
    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    
    \usepackage{amsmath, mathtools, amssymb, amsfonts}
    \usepackage{pst-all,pst-eucl}
    
    
    
    
    
    \begin{document}
    
    \ctable[
    	caption = {In Dezile eingeteilte Unternehmen des Schweizer Aktienmarktes,.und ein wenig blabla um die länge zu testen, zu sehen, was es genau macht.},
    	label = tbl_size_premium_test,
    	width = 0.8\textwidth,
    	pos = !ht,
    	nosuper,
    	center,
    	doinside = \footnotesize,
    ]{lZZZZZ}{
    	\tnote[]{Daten von Januar 1996 - September 2010, Einteilung in Gruppen erfolgte quartalsweise}
    	\tnote[1]{Betas werden über die monatliche, gewichtete Rendite gegenüber der monatlichen Rendite des SPI Price Index berechnet.}
    	\tnote[2]{Differenz zwischen der Rendite einer Aktie und dem arithmetischen Mittel (über 16 Jahre) des Zinssatzes einer Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%).}
    	\tnote[3]{Multiplikation des Beta mit der Eigenkapitalrisikoprämie; Eigenkapitalrisikoprämie ist die Differenz der durchschnittlichen Rendite des SPIX (4.61\,\%) und dem arithmetischen Mittel der Zinssätze von Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%) von 01.1996-09.2010}
    }{\FL
    	Dezil & Beta\tmark[1] & Arithmetisches Mittel der Rendite (\%)& Rendite minus risikoloser Zinssatz (\%)\tmark[2] & Erwartete Rendite minus risikoloser Zinssatz (\%)\tmark[3] & Size Premium (\%)\ML
    	1 & 1.00 & 5.29 & 1.74 & 1.06 & 0.68\NN
    	2 & 1.04 & 8.34 & 4.79 & 1.11 & 3.68\LL
    }
    
    \end{document}

  2. #2
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Hab noch keine Antwort, aber erst mal ein etwas minimaleres Beispiel draus gemacht, damit die nächsten Helfer es leichter haben.

    Code:
    \documentclass{scrreprt}
    \usepackage[utf8]{inputenc} 
    \usepackage[T1]{fontenc} 
    \usepackage[english,ngerman]{babel}
    \usepackage{ctable}
    \renewcommand{\tabularxcolumn}[1]{b{#1}} %in Tabularx-Umgebung den Text unten ausrichten
    \newcolumntype{Z}{>{\raggedleft\arraybackslash}X}
    
    \begin{document}
    \ctable[
    	caption = {In Dezile eingeteilte Unternehmen des Schweizer Aktienmarktes,.und ein wenig blabla um die länge zu testen, zu sehen, was es genau macht.},
    	label = tbl_size_premium_test,
    	width = 0.8\textwidth,
    	pos = !ht,
    	nosuper,
    	center,
    	doinside = \footnotesize,
    ]{lZZZZZ}{
    	\tnote[]{Daten von Januar 1996 - September 2010, Einteilung in Gruppen erfolgte quartalsweise}
    	\tnote[1]{Betas werden über die monatliche, gewichtete Rendite gegenüber der monatlichen Rendite des SPI Price Index berechnet.}
    	\tnote[2]{Differenz zwischen der Rendite einer Aktie und dem arithmetischen Mittel (über 16 Jahre) des Zinssatzes einer Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%).}
    	\tnote[3]{Multiplikation des Beta mit der Eigenkapitalrisikoprämie; Eigenkapitalrisikoprämie ist die Differenz der durchschnittlichen Rendite des SPIX (4.61\,\%) und dem arithmetischen Mittel der Zinssätze von Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%) von 01.1996-09.2010}
    }{\FL
    	Dezil & Beta\tmark[1] & Arithmetisches Mittel der Rendite (\%)& Rendite minus risikoloser Zinssatz (\%)\tmark[2] & Erwartete Rendite minus risikoloser Zinssatz (\%)\tmark[3] & Size Premium (\%)\ML
    	1 & 1.00 & 5.29 & 1.74 & 1.06 & 0.68\NN
    	2 & 1.04 & 8.34 & 4.79 & 1.11 & 3.68\LL
    }
    
    \end{document}

  3. #3
    Registrierter Benutzer
    Registriert seit
    25.07.2010
    Beiträge
    31
    Vielen Dank.

    Ich habe mein Minimalbeispiel extra so lang belassen, damit besser erkannt werden kann, ob sich vielleicht einzelne Pakete stören und es deswegen zu diesem Fehler kommt.

    Eigentlich habe ich mich, so viel ich weiss, an die Anleitung des Paketes \ctable gehalten.

  4. #4
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Offenbar verursacht diese Zeile

    Code:
    \renewcommand{\tabularxcolumn}[1]{b{#1}} %in Tabularx-Umgebung den Text unten ausrichten
    das Problem.

  5. #5
    Registrierter Benutzer
    Registriert seit
    25.07.2010
    Beiträge
    31
    und wie kann ich das beheben, und trotzdem die Textausrichtung unten haben bei tabularx-Umgebung? Beim Spaltentyp X macht er nämlich die Textausrichtung oben.

  6. #6
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Die Pakete einzeln auskommentieren und gucken, ob der Fehler noch da ist, ist eigentlich DEINE Arbeit beim Erstellen eines Minimalbeispiels! So machst du deinen Helfern nur zusätzlich Arbeit und außerdem hat nicht jeder alle Pakete oder Lust, sich welche runterzuladen, die er gar nicht braucht!
    Ein Minimalbeispiel soll nur noch das enthalten, was auch den Fehler verursacht. Steht auch in allen Anleitungen.

  7. #7
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Oh, ob man die Ausrichtung innerhalb von ein und derselben Tabelle ändern kann... Na, mal warten, bis die großen Experten kommen...

    Ist oben ausgerichteter Text denn schlecht?

  8. #8
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    ctable benutzt X-Spalten für die Fußnoten. Änderungen von tabularxcolumn wirken sich also aus. Du müsstest das lokal ändern. Einen geeigneten Hook gibt es nicht, also musst du den Befehl patchen. Kopiere die komplette Definition von \ctable (etwa 110 Zeilen) zwischen \makeatletter + \makeatother in deine Präambel, ändere \newcommand in \renewcommand und füge gegen Ende die Definition von tabularxcolumn ein (die zwei ## sind Absicht!).

    Code:
      
    \makeatletter
    \renewcommand{\ctable}[4][]{%
    
    % viele Zeilen
          \renewcommand{\tabularxcolumn}[1]{p{##1}}% Einfügen
          \begin{tabularx}{\hsize}{r@{\,}>{\raggedright}X}
    
    %weitere Zeilen
    } %Ende Definition \ctable.
    \makeatletter

    Oder verzichte auf ctable.

  9. #9
    Registrierter Benutzer
    Registriert seit
    11.09.2005
    Beiträge
    1.712
    Gäbe es eigentlich auch eine Möglichkeit, den Befehlt für die X-Spalten zu kopieren, umzubenennen und ihr mehrere Bedeutungen zu geben? Also z.B. zusätzlich zur normalen X-Spalte eine vertikal zentrierte Y-Spalte, die sich wie die X-Spalte anpasst.

    Hätte mir da sowas überlegt:
    Code:
    \documentclass{scrreprt}
    \usepackage{tabularx}
    
    \let\tabularycolumn\tabularxcolumn
    \renewcommand{\tabularycolumn}[1]{m{#1}}
    
    \begin{document}
    
    \begin{tabularx}{\textwidth}{XY}
    normal & mittig 
    \end{tabularx}
    
    \end{document}
    Aber das klappt logischerweise nicht, denn LaTeX weiss ja nicht, was die Y-Spalte soll. Nur finde ich den Bezug zwischen \tabularxcolumn und X nicht, den ich kopieren/umdefinieren könnte.

  10. #10
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Na ja, im Prinzip ist ja das

    \newcolumntype{Z}{>{\raggedleft\arraybackslash}X}

    auch so was, nur dass es da nicht um die vertikale Ausrichtung geht. Die scheint irgendwie besonders schwierig zu sein. Das einzige, was ich hinbekommen habe, um die Fußnotenzeichen am Anfang stehen zu haben, ist folgendes

    Code:
    \documentclass{scrreprt}
    \usepackage[utf8]{inputenc} 
    \usepackage[T1]{fontenc} 
    \usepackage[english,ngerman]{babel}
    \usepackage{ctable}
    \renewcommand{\tabularxcolumn}[1]{b{#1}} %in Tabularx-Umgebung den Text unten ausrichten
    \newcolumntype{Z}{>{\raggedleft\arraybackslash}X}
    
    \begin{document}
    \ctable[
    	caption = {In Dezile eingeteilte Unternehmen des Schweizer Aktienmarktes,.und ein wenig blabla um die länge zu testen, zu sehen, was es genau macht.},
    	label = tbl_size_premium_test,
    	width = 0.8\textwidth,
    	pos = !ht,
    	nosuper, notespar,
    	center,
    	doinside = \footnotesize,
    ]{lZZZZZ}{
    	\tnote[]{Daten von Januar 1996 - September 2010, Einteilung in Gruppen erfolgte quartalsweise\\}
    	\tnote[1]{Betas werden über die monatliche, gewichtete Rendite gegenüber der monatlichen Rendite des SPI Price Index berechnet.\\}
    	\tnote[2]{Differenz zwischen der Rendite einer Aktie und dem arithmetischen Mittel (über 16 Jahre) des Zinssatzes einer Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%).\\}
    	\tnote[3]{Multiplikation des Beta mit der Eigenkapitalrisikoprämie; Eigenkapitalrisikoprämie ist die Differenz der durchschnittlichen Rendite des SPIX (4.61\,\%) und dem arithmetischen Mittel der Zinssätze von Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%) von 01.1996-09.2010}
    }{\FL
    	Dezil & Beta\tmark[1] & Arithmetisches Mittel der Rendite (\%)& Rendite minus risikoloser Zinssatz (\%)\tmark[2] & Erwartete Rendite minus risikoloser Zinssatz (\%)\tmark[3] & Size Premium (\%)\ML
    	1 & 1.00 & 5.29 & 1.74 & 1.06 & 0.68\NN
    	2 & 1.04 & 8.34 & 4.79 & 1.11 & 3.68\LL
    }
    \end{document}
    und das ist ehrlich gesagt ziemlicher Schrott. Erstens vom ganzen Ansatz her, eine neue Option einzuführen und dann deren Hauptidee gleich wieder mit Gewalt rückgängig zu machen, und zweitens weil dann natürlich die ganzen 1em-Vorgaben nichts mehr bringen und die Fußnoten sich wie Fließtext verhalten.

  11. #11
    Registrierter Benutzer
    Registriert seit
    25.07.2010
    Beiträge
    31
    Vielen Dank für eure Antworten.

    Mir geht es eigentlich hauptsächlich um die Captions, die nicht länger als die vorgegebene Tabellenbreite sein sollen. Das ist das Grundproblem. Dies lässt sehr schön mit ctable lösen.

    Ich habe vorher threeparttable benutzt für meine Fussnoten innerhalb einer Tabelle. Aber die langen Captions gehen dann über den Tabellenrand hinaus, was ja nicht seht toll aussieht.

    Und die Ausrichtung unten sieht bei mehrzeiligen Spaltenüberschriften auch besser aus, finde ich.

  12. #12
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Gäbe es eigentlich auch eine Möglichkeit, den Befehlt für die X-Spalten zu kopieren, umzubenennen und ihr mehrere Bedeutungen zu geben?
    Auf keinen Fall eine einfache. \tabularcolumnx wird in \TX@endtabularx benutzt, wo im Wesentlichen ein "\newcolumntype{X}{\tabularcolumnx{breite}}" ausgeführt wird. Es reicht aber nicht, dort noch ein \newcolumntype{Y} einzuschmuggel, weil tabularx ja auch einen Problemlauf machen muss, bei dem die X und Y-Spalten ausgespart werden müssen. Den Code müsste man auch patchen.

  13. #13
    Registrierter Benutzer
    Registriert seit
    30.10.2010
    Beiträge
    36
    Ich hätte eine Notlösung für das Problem, was aber die Sache nicht im Kern löst:
    Code:
    \documentclass{scrreprt}
    \usepackage[utf8]{inputenc} 
    \usepackage[T1]{fontenc} 
    \usepackage[english,ngerman]{babel}
    \usepackage{ctable,calc}
    \renewcommand{\tabularxcolumn}[1]{b{#1}} %in Tabularx-Umgebung den Text unten ausrichten
    \newcolumntype{Z}{>{\raggedleft\arraybackslash}X}
    \begin{document}
    \newlength\tnotewidth
    \settowidth\tnotewidth{[20]\,\tabcolsep}
    \setlength\tnotewidth{0.8\linewidth-\tnotewidth}
    \ctable[
    	caption = {In Dezile eingeteilte Unternehmen des Schweizer Aktienmarktes,.und ein wenig blabla um die länge zu testen, zu sehen, was es genau macht.},
    	label = tbl_size_premium_test,
    	width = 0.8\textwidth,
    	pos = !ht,
    	nosuper,
    	center,
    	doinside = \footnotesize,
    ]{lZZZZZ}{\tnote[]{f}
    	\tnote[]{\parbox[t]{\tnotewidth}{Daten von Januar 1996 - September 2010, Einteilung in Gruppen erfolgte quartalsweise}}
    	\tnote[1]{\parbox[t]{\tnotewidth}{Betas werden über die monatliche, gewichtete Rendite gegenüber der monatlichen Rendite des SPI Price Index berechnet.}}
    	\tnote[20]{\parbox[t]{\tnotewidth}{Differenz zwischen der Rendite einer Aktie und dem arithmetischen Mittel (über 16 Jahre) des Zinssatzes einer Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%).}}
    	\tnote[3]{\parbox[t]{\tnotewidth}{Multiplikation des Beta mit der Eigenkapitalrisikoprämie; Eigenkapitalrisikoprämie ist die Differenz der durchschnittlichen Rendite des SPIX (4.61\,\%) und dem arithmetischen Mittel der Zinssätze von Kassenobligation der Schweizer Eidgenossenschaft mit einer Laufzeit von 20 Jahren (3.54\,\%) von 01.1996-09.2010}}
    }{\FL
    	Dezil & Beta\tmark[1] & Arithmetisches Mittel der Rendite (\%)& Rendite minus risikoloser Zinssatz (\%)\tmark[2] & Erwartete Rendite minus risikoloser Zinssatz (\%)\tmark[3] & Size Premium (\%)\ML
    	1 & 1.00 & 5.29 & 1.74 & 1.06 & 0.68\NN
    	2 & 1.04 & 8.34 & 4.79 & 1.11 & 3.68\LL
    }
    
    \end{document}

  14. #14
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Bie mir läuft das nur, wenn ich die Zeile mit \settowidth auskommentiere. Sonst gibt es einen Fehler: missing number, treated as zero.
    Rätselhafter ist mir allerdings, wie das überhaupt funktionert. Die Parbox betrifft ja die Zahl gar nicht.

  15. #15
    Registrierter Benutzer Avatar von rais
    Registriert seit
    18.07.2005
    Beiträge
    5.862
    Moin moin,
    vllt meinte CollmDante das so
    Code:
    \settowidth\tnotewidth{[20]\,\rule{\tabcolsep}{0pt}}
    \setlength\tnotewidth{0.8\linewidth-\tnotewidth}
    bzw. so
    Code:
    \settowidth\tnotewidth{[20]\,}
    \setlength\tnotewidth{0.8\linewidth-\tabcolsep-\tnotewidth}
    ?

    MfG
    Rainer
    There's nothing a good whack with a hammer won't fix!

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •