Warum ist eine Caption über und eine unter den Objekten?

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: Warum ist eine Caption über und eine unter den Objekten?

von roibot » Sa 19. Aug 2017, 14:14

Ja, ich habe ihn getestet, aber das war falsch. Jetzt habe ich deinen Vorschlag richtig verstanden und es funktioniert. Vielen Dank für deine Hilfe.

von esdd » Sa 19. Aug 2017, 13:40

Wie ich schon geschrieben habe - und es auch eindeutig in der Doku steht - ist für \ttabbox explizit festgelegt, dass die Beschriftung immer oberhalb erfolgt. Für \ffigbox ist dagegen mittels \nocapbeside festgelegt, dass sich die Positionierung der Beschriftung nach den globalen Vorgaben richtet. Deshalb übernimmt \ffigbox die Vorgaben von \floatsetup.

Hast Du meinen Vorschlag wirklich getestet?
\documentclass[12pt]{article} 
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage[ngerman]{babel} 
\usepackage{floatrow} 
\usepackage{booktabs} 
\usepackage{graphicx} 
\usepackage[font=small,labelfont=bf]{caption} 

\floatsetup[table]{capposition=bottom}
\newfloatcommand{ftabbox}{table}[\nocapbeside][\FBwidth]

\begin{document} 
    
\begin{figure}[htb!] 
   \centering 
   \begin{floatrow}[2] 

      \ftabbox[\linewidth] 
         {\begin{tabular}{lllllll} 
         \toprule 
         & \multicolumn{2}{c}{Farbe} & \multicolumn{2}{c}{Regen}  \\ 
         \cmidrule(lr){2-3}              \cmidrule(lr){4-5} 
         & $M$    & $SD$ & $M$     & $SD$     \\ 
         \midrule 
         \emph{gut}  & 2.12    & 1.60   &  1.08    &  1.39      \\ 
         \emph{besser} & 2.31    & 1.56   &  0.40    &  1.48      \\ 
         \bottomrule               
         \end{tabular}} 
         {\caption{Deskriptivstatistische Auswertung der überprüften Variablen. Es sind jeweils Mittelwert ($M$) und Standardabweichung ($SD$) für die Bedingungen \emph{gut} und \emph{besser} angegeben.} 
         \label{tab:daten3}} 

      \ffigbox[\linewidth] 
         {\includegraphics[width=\linewidth]{example-image}} 
         {\caption{Histogramm der Differenzvariablen (\emph{gut} $-$ \emph{besser}) mit Passung zu einer Normalverteilung.} 
         \label{fig:verteilung3}} 
          
   \end{floatrow} 
\end{figure} 
\end{document}

von roibot » Sa 19. Aug 2017, 13:30

Hallo, danke für deine Antwort. Leider hat mir dein Vorschlag nicht weitergeholfen. Eigentlich müsste es laut Doku, 3.1.3 Position of Caption, möglich sein, die Caption-Position zu bestimmen. Seltsamerweise funktioniert dies nur für table nicht, für figure funktioniert es, siehe im Beispiel.
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{floatrow}
\usepackage{booktabs}
\usepackage{graphicx}
\usepackage[font=small,labelfont=bf]{caption}

\begin{document}

\floatsetup[figure]{capposition=bottom}
\floatsetup[table]{capposition=bottom}

\begin{figure}[htb!]
	\TopFloatBoxes
	\begin{floatrow}[2]

		\ttabbox[\linewidth]
			{\begin{tabular}{lllllll}
			\toprule
			& \multicolumn{2}{c}{Farbe} & \multicolumn{2}{c}{Regen}  \\
			\cmidrule(lr){2-3}				  \cmidrule(lr){4-5}
			& $M$    & $SD$ & $M$     & $SD$     \\
			\midrule
			\emph{gut}  & 2.12    & 1.60   &  1.08    &  1.39      \\
			\emph{besser} & 2.31    & 1.56   &  0.40    &  1.48      \\
			\bottomrule              
			\end{tabular}}
			{\caption{Deskriptivstatistische Auswertung der überprüften Variablen. Es sind jeweils Mittelwert ($M$) und Standardabweichung ($SD$) für die Bedingungen \emph{gut} und \emph{besser} angegeben.}
			\label{tab:daten3}}

		\ffigbox[\linewidth]
			{\includegraphics[width=\linewidth]{example-image}}
			{\caption{Histogramm der Differenzvariablen (\emph{gut} $-$ \emph{besser}) mit Passung zu einer Normalverteilung.}
			\label{fig:verteilung3}}
			
	\end{floatrow}
\end{figure}

%%%%%%%%%%%%%%

\floatsetup[figure]{capposition=top}
\floatsetup[table]{capposition=top}

\begin{figure}[htb!]
	\TopFloatBoxes
	\begin{floatrow}[2]
		
		\ttabbox[\linewidth]
		{\begin{tabular}{lllllll}
				\toprule
				& \multicolumn{2}{c}{Farbe} & \multicolumn{2}{c}{Regen}  \\
				\cmidrule(lr){2-3}				  \cmidrule(lr){4-5}
				& $M$    & $SD$ & $M$     & $SD$     \\
				\midrule
				\emph{gut}  & 2.12    & 1.60   &  1.08    &  1.39      \\
				\emph{besser} & 2.31    & 1.56   &  0.40    &  1.48      \\
				\bottomrule              
		\end{tabular}}
		{\caption{Deskriptivstatistische Auswertung der überprüften Variablen. Es sind jeweils Mittelwert ($M$) und Standardabweichung ($SD$) für die Bedingungen \emph{gut} und \emph{besser} angegeben.}
			\label{tab:daten4}}
		
		\ffigbox[\linewidth]
		{\includegraphics[width=\linewidth]{example-image}}
		{\caption{Histogramm der Differenzvariablen (\emph{gut} $-$ \emph{besser}) mit Passung zu einer Normalverteilung.}
			\label{fig:verteilung4}}
		
	\end{floatrow}
\end{figure}


\end{document}
Dieses Paket macht mich fertig. Ich habe es auch schon mit Minipage probiert, aber da habe ich nicht herausgefunden, wie eine Caption "Tabelle" und eine "Abbildung" heißen kann, wenn beides über figure oder table eingebunden wird.

Re: Warum ist eine Caption über und eine unter den Objekten?

von esdd » Fr 18. Aug 2017, 20:02

roibot hat geschrieben:Die Caption der Tabelle ist über dem Objekt, die Caption der Grafik unter dem Objekt. Ich habe absolut keine Ahnung warum und wie ich das so verändern kann, dass beine Captions unter den Objekten sind. Eine Option aus dem floatrow-Paket verändert nichts.
Aus der Doku, 1.1.1 Float Box Commands
One of the first macros of this package for creation of float boxes is a macro which builds contents of the table environment with caption above (\ttabbox).
Das ist also das vom Paket für diese Box vorgegebene Verhalten. Definiert wird der Boxbefehl mit
\newfloatcommand{ttabbox}{table}[\captop][\FBwidth]
Das findet man genauso in der Doku wie die Definition von \ffigbox. Du kannst Dir nun analog eine \ftabbox definieren mit
\newfloatcommand{ftabbox}{table}[\nocapbeside][\FBwidth]
Prinzipiell könnte man mit \renewfloatcommand auch \ttabbox umdefinieren.

Warum ist eine Caption über und eine unter den Objekten?

von roibot » Fr 18. Aug 2017, 18:32

Hallo zusammen,

ich schreibe gerade an einem Dokument und da beobachte ich folgendes Verhalten, was ich mir nicht erklären kann. Ich habe mit floatrow eine Tabelle und eine Grafik nebeneinandergesetzt. Die Caption der Tabelle ist über dem Objekt, die Caption der Grafik unter dem Objekt. Ich habe absolut keine Ahnung warum und wie ich das so verändern kann, dass beine Captions unter den Objekten sind. Eine Option aus dem floatrow-Paket verändert nichts.

Mein Beispiel
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{floatrow}
\usepackage{booktabs}
\usepackage{graphicx}
\usepackage[font=small,labelfont=bf]{caption}
\floatsetup[table]{capposition=bottom}

\begin{document}
	
\begin{figure}[htb!]
	\centering
	\begin{floatrow}[2]

		\ttabbox[\linewidth]
			{\begin{tabular}{lllllll}
			\toprule
			& \multicolumn{2}{c}{Farbe} & \multicolumn{2}{c}{Regen}  \\
			\cmidrule(lr){2-3}				  \cmidrule(lr){4-5}
			& $M$    & $SD$ & $M$     & $SD$     \\
			\midrule
			\emph{gut}  & 2.12    & 1.60   &  1.08    &  1.39      \\
			\emph{besser} & 2.31    & 1.56   &  0.40    &  1.48      \\
			\bottomrule              
			\end{tabular}}
			{\caption{Deskriptivstatistische Auswertung der überprüften Variablen. Es sind jeweils Mittelwert ($M$) und Standardabweichung ($SD$) für die Bedingungen \emph{gut} und \emph{besser} angegeben.}
			\label{tab:daten3}}

		\ffigbox[\linewidth]
			{\includegraphics[width=\linewidth]{example-image}}
			{\caption{Histogramm der Differenzvariablen (\emph{gut} $-$ \emph{besser}) mit Passung zu einer Normalverteilung.}
			\label{fig:verteilung3}}
			
	\end{floatrow}
\end{figure}


\end{document}
Weiß jemand, wo das Problem liegt?

Viele Grüße

Nach oben