Anzeige:
Ergebnis 1 bis 8 von 8

Thema: Abstand caption <-> table, geomety problem!?

  1. #1
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62

    Abstand caption <-> table, geomety problem!?

    Hallo,

    ich will einige Tabellen nicht in eine Gleitumgebung setzen. Um dennoch nicht auf Tabellenüberschrift und Referenzierung zu verzichten, pack ich die Tabelle in eine \center Umgebung und setzte die Tabellenüberschrift mit \captionof{table}{}. Leider ist der Abstand zwischen Überschrift und Tabelle dann zu groß. Sobald ich geometry auskommentiere ist der Abstand wieder richtig. Der Fehler tritt bei Tabellen in einer Gleitumgebung (siehe 2. Tabelle im Minimalbeispiel) nicht auf.

    Code:
    \documentclass[a4paper,11pt,oneside]{scrbook}
    
    \usepackage[left=3cm, right=2.5cm, top=3cm, bottom=2cm]{geometry}						% Ränder
    \usepackage[utf8]{inputenc}																									% Umlaute
    \usepackage[ngerman]{babel} 																								% Sprache
    \usepackage[small, hang, nooneline]{caption}																% Bildunterschriften (noonelin = Linksbündig)
    \usepackage[table]{xcolor} 																									% Tabellen farbig hinterlegen
    \usepackage{array}
    \usepackage{tabu}																														% schöne Tabellen 
    
    \definecolor{blau}{RGB}{2,66,144}
    \renewcommand\familydefault{\sfdefault}
    
    \begin{document}
    
    \begin{center}
        \captionof{table}{Überschrift}
        \label{tab:03}
    		\def\arraystretch{1.4}
    		\tabulinesep=0.8ex	
    			\begin{tabu}to\textwidth{X[3]X[1]X[3]X[1]X[3]X[1]}
    			\tabucline[0.8pt]{1-6}
    			\multicolumn{2}{>{\columncolor{blau}{\textcolor{white}{\textbf{Volumenströme}}}}c}{}&\multicolumn{4}{>{\columncolor{blau}{\textcolor{white}{\textbf{Temperaturen}}}}c}{}\\[2mm]
    			\tabucline[0.6pt]{1-6}
    			\taburowcolors 1{white .. black!10!white}
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			\tabucline[0.8pt]{1-26}
    			\end{tabu}
    \end{center}
    
    \begin{table}[htbp]
        \caption{Überschrift in table umgebung mit richtigem Abstand}
        \label{tab:03}
    		\def\arraystretch{1.4}
    		\tabulinesep=0.8ex	
    			\begin{tabu}to\textwidth{X[3]X[1]X[3]X[1]X[3]X[1]}
    			\tabucline[0.8pt]{1-6}
    			\multicolumn{2}{>{\columncolor{blau}{\textcolor{white}{\textbf{Volumenströme}}}}c}{}&\multicolumn{4}{>{\columncolor{blau}{\textcolor{white}{\textbf{Temperaturen}}}}c}{}\\[2mm]
    			\tabucline[0.6pt]{1-6}
    			\taburowcolors 1{white .. black!10!white}
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			\tabucline[0.8pt]{1-26}
    			\end{tabu}
    \end{table}
    
    \end{document}
    Kann mir da jemand weiterhelfen? Und wenn jemand spontan eine Lösung hat wie ich die Zeilenhöhe meiner ersten (blau hinterlegte) Zeile vergrößern kann ohne dass der Text dabei vertikal vertuscht, würde ich mich ebenfalls freuen

    Viele Grüße,
    Josch

  2. #2
    Registrierter Benutzer
    Registriert seit
    09.12.2005
    Beiträge
    1.327
    Da Du keine Tabellenunterschriften (Voreinstellung), sondern Tabellenüberschriften verwendest, solltest Du \captionabove und \captionaboveof bzw. verwenden. Du kannst für \caption in table-Umgebungen auch die Voreinstellung mit der KOMA-Script-Option captions=tableabove ändern. Für \captionof ändert das AFAIK aber nichts. Dort musst Du explizit \captionaboveof verwenden.

    Derzeit ist der Abstand bei table jedenfalls zu gering!

  3. #3
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62
    moin moin,

    danke klops für die Hinweise. Jetzt lässt sich der Abstand der \captionaboveof{} über skip=6pt einstellen.
    Allerdings zeigt sich meine Tabellenüberschrift in der Gleitumgebung von \captionsetup[table]{position=top,skip=6pt} unbeeindruckt was übersehe ich hier?
    Viele Grüße,
    Josch
    Code:
    \documentclass[a4paper,11pt,oneside]{scrbook}
    
    \usepackage[left=3cm, right=2.5cm, top=3cm, bottom=2cm]{geometry}						
    \usepackage[utf8]{inputenc}																									
    \usepackage[ngerman]{babel} 																								
    \usepackage{caption}[2013/02/03]																						
    \usepackage[table]{xcolor} 																									
    \usepackage{array}
    \usepackage{tabu}
    \usepackage{blindtext}																														 
    
    \captionsetup{font={small,sf},labelfont={bf},format={hang},singlelinecheck=off}
    \captionsetup[table]{position=top,skip=6pt}
    
    \definecolor{blau}{RGB}{2,66,144}
    
    \begin{document}
    
    \blindtext
    
    \begin{center}
        \captionaboveof{table}{Überschrift, Abstand lässt sich jetzt über skip=xypt einstellen}
        \label{tab:03}
    		\def\arraystretch{1.4}
    		\tabulinesep=0.8ex	
    			\begin{tabu}to\textwidth{X[3]X[1]X[3]X[1]X[3]X[1]}
    			\tabucline[0.8pt]{1-6}
    			\multicolumn{2}{>{\columncolor{blau}{\textcolor{white}{\textbf{Volumenströme}}}}c}{}&\multicolumn{4}{>{\columncolor{blau}{\textcolor{white}{\textbf{Temperaturen}}}}c}{}\\[2mm]
    			\tabucline[0.6pt]{1-6}
    			\taburowcolors 1{white .. black!10!white}
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			\tabucline[0.8pt]{1-26}
    			\end{tabu}
    \end{center}
    
    \blindtext
    
    \begin{table}[htbp]    
    		\def\arraystretch{1.4}
    		\tabulinesep=0.8ex
    				\caption{Überschrift in table Umgebung... absolut unbeeindruckt von skip=6pt}
    				\label{tab:03}
    			\begin{tabu}to\textwidth{X[3]X[1]X[3]X[1]X[3]X[1]}
    			\tabucline[0.8pt]{1-6}
    			\multicolumn{2}{>{\columncolor{blau}{\textcolor{white}{\textbf{Volumenströme}}}}c}{}&\multicolumn{4}{>{\columncolor{blau}{\textcolor{white}{\textbf{Temperaturen}}}}c}{}\\[2mm]
    			\tabucline[0.6pt]{1-6}
    			\taburowcolors 1{white .. black!10!white}
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			\tabucline[0.8pt]{1-26}
    			\end{tabu}				
    \end{table}
    
    \end{document}

  4. #4
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Du kannst das caption Paket einfach weglassen und alle Einstellungen über KOMA-Script vornehmen. Mit der Option captions=tableheading wird davon ausgegangen, dass alle captions bei Tabellen als Überschriften gesetzt werden und es werden die dafür richtigen Abstände eingefügt. Mit dieser Klassenoption liefern dann \captionaboveof und \captionof sowie \capitonabove und \caption die gleichen Abstände der Tabellenüberschriften zu den Tabellen. Die KOMA-Script Klassen setzen die Beschriftungen übrigens standardmäßig hängend.

    Die caption und die nicht gleitende Tabelle gehören in eine minipage, damit ein Seitenumbruch zwischen beiden ausgeschlossen wird.

    Code:
    \documentclass[oneside,
      captions=nooneline,% auch einzeilige captions linksbündig
      captions=tableheading,% Tabellenüberschriften (richtiger Abstand)
      ]{scrbook}
    \addtokomafont{caption}{\small}% Schrifteinstellung für caption
    \addtokomafont{captionlabel}{\bfseries}% zusätzlich für captionlabel
    
    \usepackage[left=3cm, right=2.5cm, top=3cm, bottom=2cm]{geometry}
    \usepackage[utf8]{inputenc}
    \usepackage[ngerman]{babel}
    %\usepackage[small, hang, nooneline]{caption}% nicht nötig
    \usepackage[table]{xcolor}
    \usepackage{array}
    \usepackage{tabu}
    
    \definecolor{blau}{RGB}{2,66,144}
    \renewcommand\familydefault{\sfdefault}
    
    \begin{document}
    
    \begin{center}
    \begin{minipage}{\linewidth}
        \centering
        \captionof{table}{Überschrift}
        \label{tab:01}
    		\def\arraystretch{1.4}
    		\tabulinesep=0.8ex	
    			\begin{tabu}to\textwidth{X[3]X[1]X[3]X[1]X[3]X[1]}
    			\tabucline[0.8pt]{1-6}
    			\multicolumn{2}{>{\columncolor{blau}{\textcolor{white}{\rule{0pt}{1.5em}\textbf{Volumenströme}}}}c}{}&\multicolumn{4}{>{\columncolor{blau}{\textcolor{white}{\textbf{Temperaturen}}}}c}{}\\[2mm]
    			\tabucline[0.6pt]{1-6}
    			\taburowcolors 1{white .. black!10!white}
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			\tabucline[0.8pt]{1-26}
    			\end{tabu}
    \end{minipage}
    \end{center}
    
    \begin{table}[htbp]
        \caption{Überschrift in table umgebung mit richtigem Abstand}
        \label{tab:02}
    		\def\arraystretch{1.4}
    		\tabulinesep=0.8ex	
    			\begin{tabu}to\textwidth{X[3]X[1]X[3]X[1]X[3]X[1]}
    			\tabucline[0.8pt]{1-6}
    			\multicolumn{2}{>{\columncolor{blau}{\textcolor{white}{\textbf{Volumenströme}}}}c}{}&\multicolumn{4}{>{\columncolor{blau}{\textcolor{white}{\textbf{Temperaturen}}}}c}{}\\[2mm]
    			\tabucline[0.6pt]{1-6}
    			\taburowcolors 1{white .. black!10!white}
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			test&10&test&10&test&10\\
    			\tabucline[0.8pt]{1-26}
    			\end{tabu}
    \end{table}
    
    \end{document}
    Gruß
    Elke

    PS: In der oberen Tabelle habe ich mit \rule{0pt}{1.5em} eine unsichtbare "Stütze" eingebaut, die die Zeilenhöhe vergrößert
    Geändert von esdd (03-05-2014 um 13:46 Uhr) Grund: Code vervollständigt

  5. #5
    Registrierter Benutzer
    Registriert seit
    21.08.2009
    Beiträge
    496
    Zitat Zitat von klops Beitrag anzeigen
    Du kannst für \caption in table-Umgebungen auch die Voreinstellung mit der KOMA-Script-Option captions=tableabove ändern. Für \captionof ändert das AFAIK aber nichts. Dort musst Du explizit \captionaboveof verwenden.
    Wenn keine weiteren Pakete geladen werden, die Einfluss auf die Beschriftungen von Gleitumgebungen nehmen, berücksichtigt \captionof laut KOMA-Script Anleitung die gesetzte Option capitons=tableheading oder alternativ mit gleicher Wirkung captions=tableabove.

    Auf das caption Paket kann man in dem angegebenen Beispiel zwar eigentlich verzichten, aber wenn ich es trotzdem lädt, funktioniert bei mir die Kombination von captions=tableheading und \captionof. Das entspricht auch den Angaben in der Dokumentation des Paketes caption .

    Gruß
    Elke
    Geändert von esdd (03-05-2014 um 20:01 Uhr)

  6. #6
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62
    Hallo Elke,
    vielen Dank für die Hilfe, wenn ich caption auskommentiere und deine KOMA-Einstellung verwende klappt alles wunderbar

    allerdings scheint es in meinem Beispiel ein Problem mit caption zu geben, denn die Einstellung (\captionsetup) werden, zumindest in der Gleitumgebung, ignoriert.

    Naja ich kann auch ohne das caption packet auskommen

    Grüße,
    Josch

  7. #7
    Registrierter Benutzer
    Registriert seit
    19.05.2009
    Beiträge
    4.045
    Du musst nicht auf \caption verzichten, aber du musst zusätzlich noch captions=tableabove bei der Dokumentenklasse angeben.

  8. #8
    Registrierter Benutzer
    Registriert seit
    04.08.2008
    Beiträge
    62
    Hallo,

    @ Ulrike: super damit kann ich dann meine caption Optionen wie gewohnt setzen

    @ Elke: Das mit der \rule{0pt}{1.5em} hab ich ganz übersehen, damit kann ich mit
    \\[xmm] die Zeilenhöhe vergrößern und die Schrift einigermaßen zentriert lassen.

    Vielen Dank für eure Hilfe!

    Grüße,
    Josch

Lesezeichen

Berechtigungen

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