PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Tabellen und Abbildungen nach Apa6 th. aber in einer KOMA-Klasse



nixversteh
23-05-2013, 08:11
Hallo folks,

für eine Bekannte versuche ich zuerreichen, dass Tabellen und Abbildungen apa6th. ed. konform sind. Zum Einsatz kommt die Komaklasse *scrreprt* und kompiliert werden soll mit XeLaTex wegen eines bestimmten Fonts.

Ist dies grundsätzlich möglich oder muss meine Bekannte auf eine vorhandene Vorlage (https://bitbucket.org/Andre25/apa6g/downloads) zurück greifen?

Freue mich über jeden Hinweis

Lieben Gruß

Martin

PS.: Versuche, Teile der apa6g.cls zu übernehmen haben zu vielen Fehlern geführt.

klops
23-05-2013, 09:04
Wo liegt denn genau das Problem? (http://www.mrunix.de/forums/showthread.php?t=66921)

Wenn ich die Beispieltabelle aus der apa6-Anleitung verwende, sehe ich jedenfalls kein größeres:

\iffalse% verwende scrreprt
%\iftrue% verwende apa6
\documentclass[jou]{apa6}
\else
\documentclass[twocolumn,captions=nooneline,fontsize=10pt]{scrreprt}
\usepackage[para,flushleft]{threeparttable}
\makeatletter
% Ein paar Zeilen Code aus apa6, um threeparttable identisch zu konfigurieren
% und die beiden Befehle \tabfnm und \tabfnt aus apa6 ebenfalls verwenden zu
% können
\def\TPT@doparanotes{\par\vspace{-.4\baselineskip}% BDB
\prevdepth\z@ \TPT@hsize
\TPTnoteSettings
\raggedright
\parindent\z@ \pretolerance 8
\linepenalty 200
\renewcommand\item[1][]{\relax\ifhmode \begingroup
\unskip
\advance\hsize 10em % \hsize is scratch register, based on real hsize
\penalty -45 \hskip\z@\@plus\hsize \penalty-19
\hskip .15\hsize \penalty 9999 \hskip-.15\hsize
\hskip .01\hsize\@plus-\hsize\@minus.01\hsize
\hskip 1em\@plus .3em
\endgroup\fi
\tnote{##1}\,\ignorespaces}%
\let\TPToverlap\relax
\def\endtablenotes{\par}%
}
\def\@tab@fn#1{\ensuremath{^{\mbox{{\scriptsize #1}}}}}
\def\tabfnm#1{\rlap{\@tab@fn{#1}}}
\def\tabfnt#1#2{\raggedright\@tab@fn{#1}#2}
\makeatother
\usepackage{booktabs}
% Die nächsten vier Befehle sind in der KOMA-Script-Anleitung
% ausführlich erklärt.
\renewcommand*{\captionformat}{}
\setcapindent*{1sp}% 1sp ist so winzig, dass man den nicht sehen kann
\setkomafont{caption}{\itshape}
\setkomafont{captionlabel}{\upshape}
% Zähleränderung (Standardvorgehen nach Forum und DANTE-FAQ)
\usepackage{chngcntr}
\counterwithout{table}{chapter}
\counterwithout{table}{figure}
\fi
\usepackage[american]{babel}
\begin{document}
\begin{table}
\begin{threeparttable}
\caption{A Complex Table}
\label{tab:ComplexTable}
\begin{tabular}{@{}lrrr@{}}
\toprule
Distribution type & \multicolumn{2}{l}{Percentage of} & Total number
\\
& \multicolumn{2}{l}{targets with} & of trials per
\\
& \multicolumn{2}{l}{segment in}
& participant
\\ \cmidrule(r){2-3}
& Onset & Coda
&
\\ \midrule
Categorical -- onset\tabfnm{a} &
100 &
0
& 196
\\
Probabilistic
&
80 &
20\tabfnm{*} & 200
\\
Categorical -- coda\tabfnm{b}
&
0 &
100\tabfnm{*} & 196
\\ \midrule
\end{tabular}
\begin{tablenotes}[para,flushleft]
{\small
\textit{Note.} All data are approximate.
\tabfnt{a}Categorical may be onset.
\tabfnt{b}Categorical may also be coda.
\tabfnt{*}\textit{p} < .05.
\tabfnt{**}\textit{p} < .01.
}
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}

Statt den Code aus apa6 zu übernehmen, kann man sicher auch ganz normal mit \tnote und \item arbeiten, wenn man ein paar der Einstellungen aus der threeparttable-Anleitung anpasst. Aber so funktioniert es auch und ging schneller. Vor allem aber konnte ich so das Beispiel sowohl mit apa6 als auch mit scrreprt funktionsfähig halten.

nixversteh
23-05-2013, 10:48
Hallo klops,

vielen Dank für deine Bemühungen. Es dreht sich um den Abstand zwischen der Bezeichnung "Tabelle" und der folgenden Caption, in apa6th. ist dieser viel größer ... Wo kann da geschraubt werden.

Ein weiterer Punkt sind die Abbildungen. Apa6th. setzt die Bezeichnung "Abbildung" kursiv und in einer Linie, kein Zeilenumbruch.

Ich persönlich halte da nichts von, aber meine Bekannte soll sich daran halten.

Sitze jetzt daran schon mehr als drei Tage, sorry, bin nicht so der Programmierer.

Vielen Dank

Lieben Gruß

Martin

klops
23-05-2013, 11:16
Es dreht sich um den Abstand zwischen der Bezeichnung "Tabelle" und der folgenden Caption, in apa6th. ist dieser viel größer
Das kann ich nicht nachvollziehen. Wenn ich mein Beispiel mit apa6 statt scrreprt verarbeite (also mit \iftrue statt \iffalse am Anfang), dann ist der Abstand naherzu gleich. Ansonsten würde ich an Deiner stelle mal captions=tableabove ausprobieren. Dann müsste er größer werden. Ich habe das extra nicht gemacht, weil es eben mit apa6 genau gleich ist.


Ein weiterer Punkt sind die Abbildungen. Apa6th. setzt die Bezeichnung "Abbildung" kursiv und in einer Linie, kein Zeilenumbruch.
Dann muss man eben für Abbildungen den Font für captionlabel und die Einstellung, die ich im Beispiel mit \setcapindent an die Beispieltabelle aus der apa6-Anleitung angepasst habe ändern. Aber hat das irgend einen typografischen oder zumindest logischen Sinn, Tabellen und Abbildungen derart unterschiedlich zu behandeln?

Ggf. verwendet man das Paket caption, mit dem man unterschiedliche Stile für Tabellen und Abbildungen global definieren kann. Ob das mit KOMA-Script-Mitteln auch geht, weiß ich jetzt nicht. Sowohl für caption als auch für KOMA-Script müsste auch ich da erst einmal die Anleitung konsultieren. Das kannst Du aber sicher auch selbst. Dazu muss man kein Programmierer sein. Ich habe für obiges auch nur stur die Anleitung angewandt und dump ein paar Zeilen Code aus apa6.cls kopiert, ausprobiert, ging, fertig.

nixversteh
23-05-2013, 13:35
Hallo Klops,

du schreibst mir aus der Seele... es soll ja einige personen geben, die apa6th. gu finden und sogra vorschreiben ... Soll sich meine Bekannte erst mal ausführlich mit ihrem Prof. aus einandersetzen.
Bis hierhin vielen Dank für deine Bemühungen.

Lieben Gruß

Martin

bobmalaria
23-05-2013, 14:59
vorgaben sind vorgaben und in manchen fachbereichen sind eben übergreifend solche regeln vorhanden. vor allem in US unis ist das ziemlich streng.

meine uni schreibt zum glück nur die minimalen seitenränder, zeilenabstand, schriftgröße vor und alles andere ist recht frei.

wenn du kontrolle über die caption brauchst, dann geht das mit den KOMA boardmitteln ganz gut, allerdings finde ich das caption paket sehr gut. in der anleitung sind viele beispiele was einzelne befehle bewirken. auch die unterschiedliche behandlung von tabellen und abbildungen sollte kein problem sein.

nixversteh
23-05-2013, 18:23
Hallo bobmalaria,

ich warte jetzt erst mal das Gespräch meiner Bekannten mit ihrem Prof. ab.

Danke für deine Bemühugen.

Lieben Gruß

Martin

nixversteh
23-05-2013, 19:20
Hallo folks,

ich habe es jetzt so gelöst

%**********************************************
% Tabellen einbinden
%**********************************************
\setlength{\tabcolsep}{10pt} % Zellen Abständen
\renewcommand{\arraystretch}{1.2} % Zellen Höhe
\setlength{\abovecaptionskip}{5pt} % Abstand Oben

\newlength{\Tabellenbreite} % APA Tabelle definieren
\newcommand{\Tabelle}[1]{%
\setcapindent*{0em} % hängende Überschriften
\settowidth{\Tabellenbreite}{#1} % Breite der Überschrift
\setcapwidth[l]{\Tabellenbreite}%
\rule{\Tabellenbreite}{1pt}
\caption[\CaptionOText] \CaptionText #1
}
\newsavebox{\Tabellenbox}
\newcommand*{\CaptionText}{}
\newcommand*{\CaptionOText}{}
\newenvironment{apacaption}[2][\CaptionText]{%
\gdef\CaptionText{#2}%
\gdef\CaptionOText{#1}%
\begin{lrbox}{\Tabellenbox}%
}{%
\end{lrbox}%
\SetzeTabellenbox%
}
\newcommand{\SetzeTabellenbox}{\Tabelle{\usebox{\T abellenbox}}}

%**********************************************
\usepackage{ifthen}
\usepackage[nooneline,it]{caption}
\usepackage{booktabs,multirow,tabularx}
\usepackage{rotating}
\usepackage{array}
\usepackage{threeparttable}
%**********************************************
% Caption für Tabelle definieren
%**********************************************
\onelinecaptionsfalse
\setcapindent{0em}
\renewcommand{\captionformat}{}
\renewcommand*{\tableformat}{{\textup\tablename~}\ thetable~}
%**********************************************
% Layout Abbildungen
%**********************************************
\newlength{\Abbildungsbreite}
\newcommand{\Abbildung}[1]{%
\settowidth{\Abbildungsbreite}{#1}%
\setcapwidth[c]{\Abbildungsbreite}%
#1%
}
\setcapindent{0em} % Hängende Caption
\renewcommand*{\figureformat}{\figurename~\thefigu re:~}

Den Code habe ich vor einiger Zeit mal im Netz gefunden.


\renewcommand*{\tableformat}{{\textup\tablename~}\ thetable~} sorgt für eine Tabellenbezeichnug in "aufrechter" Schrift


\usepackage[nooneline,it]{caption} ergibt eine kursive Bezeichnung...

Diesen Code im Dokument eingefügt ergibt dann bei "Abbildug" die "aufrechte" Schrift als Titel des Bildes etc.

\caption{\textup Tiger}
Vielleicht nicht alles korrekt, besser kann ich es nicht.

Vielen Dank für die Hilfe.

Lieben Gruß

Martin

sommerfee
23-05-2013, 20:36
Ggf. verwendet man das Paket caption, mit dem man unterschiedliche Stile für Tabellen und Abbildungen global definieren kann. Ob das mit KOMA-Script-Mitteln auch geht, weiß ich jetzt nicht.
Nein, daß kann KOMA-Script nicht. Dies ist also einer der wenigen Situationen, wo die Verwendung des caption-Paketes in einem KOMA-Script-Dokument sinnvoll sein kann.



\usepackage[nooneline,it]{caption}

Ich würde mich für eines entscheiden: Entweder die Möglichkeiten von KOMA-Script verwenden, was \caption angeht, oder die Möglichkeiten des caption-Paketes. Die bunte Mischung von dir mag funktionieren (und ich habe auch versucht, dies weitesgehenst im caption-Paket zu unterstützen), aber es macht die Fehlersuche sehr schwierig, wenn eine Einstellung doch nicht wie gewünscht greift. Denn welche greift jetzt, die von KOMA-Script oder die des caption-Paketes? Dies gilt es dann für jede einzelne Einstellung zu untersuchen.

"nooneline" kann KOMA-Script auch und nennt sich dort "captions=nooneline". "it" kann KOMA-Script auch und nennt sich dort \addtokomafont{captionlabel}{\itshape}.

Wenn es also nur um diese beiden Einstellungen geht, würde (selbst) ich die mit KOMA-Mitteln tätigen und das caption-Paket nicht laden.

nixversteh
23-05-2013, 22:37
Hallo sommerfee,
habe deinen Vorschlag getestet, siehe da: Es funktioniert ...

Vielen Dank.

Lieben Gruß

Martin

klops
25-05-2013, 09:23
"nooneline" kann KOMA-Script auch und nennt sich dort "captions=nooneline". "it" kann KOMA-Script auch und nennt sich dort \addtokomafont{captionlabel}{\itshape}.
Was ich ja beides bereits in meinem Beispiel drin hatte – einschließlich Verweis auf die KOMA-Script-Anleitung …

nixversteh
25-05-2013, 09:48
Hallo klops,
[...] letztendlich bin ich ja zu den Einstellugen der KOMA-Klassen gekommen.

Vielen Dank nochmals.

Lieben Gruß

Martin

nixversteh
26-05-2013, 10:48
Hallo folks,

ich habe ein weiteres Problem mit der apa6th. Vorlage. Das Tabellenverzeichnis gefällt mir nicht, die Titel der Tabellen werden nicht in der gleichen Reihe gesetzt ... siehe Anhang.


%**********************************************
% Tabellen einbinden
%**********************************************
\setlength{\tabcolsep}{10pt} % Zellen Abständen
\renewcommand{\arraystretch}{1.2} % Zellen Höhe
\setlength{\abovecaptionskip}{5pt} % Abstand Oben

\newlength{\Tabellenbreite} % APA Tabelle definieren
\newcommand{\Tabelle}[1]{%
\setcapindent*{0em} % hängende Überschriften
\settowidth{\Tabellenbreite}{#1} % Breite der Überschrift
\setcapwidth[l]{\Tabellenbreite}%
\rule{\Tabellenbreite}{1pt}
\caption[\CaptionOText] \CaptionText #1
}
\newsavebox{\Tabellenbox}
\newcommand*{\CaptionText}{}
\newcommand*{\CaptionOText}{}
\newenvironment{apacaption}[2][\CaptionText]{%
\gdef\CaptionText{#2}%
\gdef\CaptionOText{#1}%
\begin{lrbox}{\Tabellenbox}%
}{%
\end{lrbox}%
\SetzeTabellenbox%
}
\newcommand{\SetzeTabellenbox}{\Tabelle{\usebox{\T abellenbox}}}
%**********************************************
\usepackage{ifthen}
\usepackage{booktabs,multirow,tabularx}
\usepackage{rotating}
\usepackage{array}
\usepackage{threeparttable}
%**********************************************
% Caption für Tabelle definieren
%**********************************************
\onelinecaptionsfalse
\setcapindent{0em}
\renewcommand{\captionformat}{}
\renewcommand*{\tableformat}{{\textup\tablename~}\ thetable~}
%**********************************************
% Layout Abbildungen
%**********************************************
\newlength{\Abbildungsbreite}
\newcommand{\Abbildung}[1]{%
\settowidth{\Abbildungsbreite}{#1}%
\setcapwidth[c]{\Abbildungsbreite}%
#1%
}
\setcapindent{0em} % Hängende Caption
\renewcommand*{\figureformat}{\figurename~\thefigu re:~}
%**********************************************
% Fortlaufende Nummerierung
%**********************************************
\usepackage{chngcntr}
\counterwithout{figure}{chapter}
\counterwithout{table}{chapter}
%**********************************************

und

\addtokomafont{captionlabel}{\itshape}

Die Tabellen:

\begin{table}[htbh]
{\itshape
\caption{\newline \newline\textit{Anzahl der vorkommenden Muster}}}
\begin{tabular*}{\textwidth}{c@{\extracolsep\fill} cccccc}
\hline
%\tb &\multicolumn{2}{c}{\fb}&&& \\[0.5ex]
%\cline{1-3}
% schauen & antworten & schauen &Matte&Verbal&Gesamt\\[0.5ex]
& & \multicolumn{2}{c}{Verbal} & & \multicolumn{2}{c}{Matte} \\
& & & & & & \\ \cline{3-4}\cline{6-7}
& & schauen & antworten & & schauen & mattenlegen \\ \hline
A & B & 10 & 10 & & 7 & 9 \\
${A \atop N}$ &${N \atop B}$& 2 & 0 & & 7 & 0 \\[0.8ex]
${N \atop B}$ &${A \atop N}$& 3 & 0 & & 2 & 0 \\[0.8ex]
A & A & 0 & 1 & & 0 & 0 \\
B & B & 19 & 25 & & 11 & 23 \\
N & N & 2 & 0 & & 2 & 0 \\
\hline
\end{tabular*}\\ [0.5ex]
\scriptsize{\textit{Note.}\\
B=auf das Objekt reagieren; A=entgegen den tatsächlichen Ort des Objekts reagieren;\\
N = keine interpretierbare Augenbewegung}
\end{table}

\begin{table}
\caption{\newline \newline\textit{Monatsetat (in Euro)}}
\begin{tabular*}{\textwidth}{l@{\extracolsep\fill} cccccc}
\hline
& N & M & s & MD & MIN & MAX \\
\hline
Berufstätig & 5 & 612 & 384 & 500 & 145 & 1017 \\
Nicht berufstätig & 21 & 485 & 272 & 436 & 0 & 945 \\
Gesamt & 26 & 509 & 292 & 468 & 0 & 1017 \\
\hline
\end{tabular*}
\end{table}


Hat jemand ein Rat?

Vielen Dank, meine Suche bei Mr. Google hat mich nicht weiter gebracht

Lieben Gruß

Martin

klops
26-05-2013, 14:22
Das hast Du mit den \newline am Anfang der \caption-Argumente selbst verbrochen. Die gehören an der Stelle absolut nicht hin. Ich verstehe auch nicht, warum Du die gemacht hast. Wie man zwischen "Table n" und Tabellentitel einen Zeilenumbruch bekommt, habe ich Dir ja bereits gezeigt. Wenn Du wirklich mit so einem dreckigen Trick arbeiten willst, musst Du eben auch an die Nebenwirkungen beispielsweise bezüglich des Verzeichnisses denken und dann umständlich mit dem optionalen Argument von \caption arbeiten. Ich würde an Deiner Stelle aber lieber nach einer sauberen Lösung für die Formatierung von \caption suchen.

nixversteh
26-05-2013, 14:39
Hallo klops,

das habe ich geahnt ...

Mal sehen, was ich mache...

Vielen Dank

Lieben Gruß

Martin

nixversteh
26-05-2013, 20:47
Hallo folks,

ich habe jetzt alle codeschnippsel raus genommen und diese eingefügt:

\usepackage[singlelinecheck=off,justification=RaggedRight]{caption}
\usepackage{float}
\floatstyle{plaintop}
\floatstyle{plain} % This puts captions below the figure
\DeclareCaptionLabelFormat{figurelabel}{\hspace{-\RaggedRightParindent}\textit{#1 #2}}
\DeclareCaptionLabelFormat{tablelabel}{\hspace{-\RaggedRightParindent}#1 #2}
\DeclareCaptionTextFormat{tabletext}{\hspace{-\RaggedRightParindent}\textit{#1}}
\captionsetup[table]{position=above,labelformat=tablelabel,labelsep=ne wline,textformat=tabletext}
\captionsetup[figure]{position=below,labelformat=figurelabel}

Das Problem besteht jetzt darin, dass zwar das Abb.verzeichnis und das Taben.verzeichnis gut aussehen, leider haben aber die Tabellen keine Überschrift mehr ...

Ich bin am Ende meiner Fähigkeiten angelangt, hier sind Profis gefragt.

Vielen Dank für Hinweise

Lieben Gruß

Martin

nixversteh
27-05-2013, 07:01
Hallo folks,

ich habe im Internet einige Codeschnippsel gefunden, die nach Anpassung (eher try and error) durch mich alles bringen, was erwartet wird.

%**********************************************
% Tabellen einbinden
%**********************************************
\usepackage{ifthen}
\usepackage{booktabs,multirow,tabularx}
\usepackage{rotating}
\usepackage{array}
\usepackage{threeparttable}
%**********************************************
% Caption für Tabelle definieren
%**********************************************
\usepackage[singlelinecheck=off]{caption}
\usepackage{float}
\DeclareCaptionLabelFormat{figurelabel}{\textit{#1 #2}}
\DeclareCaptionTextFormat{tabletext}{\vskip0pt\hsp ace{-\parindent}\raggedright\textit{#1}}
\captionsetup[table]{textformat=tabletext,skip=15pt,format=plain,skip= 15pt,justification=justified,labelsep=newline, position=above,labelfont={up},textfont=it}
\captionsetup[figure]{position=below,labelformat=figurelabel}
%**********************************************

Vielen Dank

Lieben Gruß

Martin

EDIT: Der alte Code erezugte einen Fehler, fiel aber nicht auf, weil beim nochmaligem kompilieren ging es ... falsch war es dennoch

sommerfee
27-05-2013, 08:37
leider haben aber die Tabellen keine Überschrift mehr ...

Was denn? Unterschrifen? Gar keine Beschriftung mehr?


Einzig der Abstand zwischen der Bezeichung "Tabbelle" und deren Titel passt nicht.

Ich habe leider erst (frühestens) morgen wieder ein lauffähiges TeX hier, dann kann ich mir das anschauen.

Hast du ein lauffähiges, kleines Beispiel für uns, was beide Probleme zeigt, so daß wir uns das anschauen können?

nixversteh
27-05-2013, 08:45
Was denn? Unterschrifen? Gar keine Beschriftung mehr?



Ich habe leider erst (frühestens) morgen wieder ein lauffähiges TeX hier, dann kann ich mir das anschauen.

Hast du ein lauffähiges, kleines Beispiel für uns, was beide Probleme zeigt, so daß wir uns das anschauen können?

Hallo Axel,

hat sich erledigt, siehe meinen Post vor deinem.

Danke

Ich hoffe, nun, dass meine Bekannte endlich mit ihrem Prof. spricht.

Gruß

Martin