44

Tabellen und Abbildungen: Gleitobjekte - unix-ag.uni-kl.de · (vereinfachte) Platzierungsregeln I möglichst früh I aber nicht vor De nition I Reihenfolge (verschiedener Gleitobjekte)

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Tabellen und Abbildungen: GleitobjekteLATEX-Kurs der Unix-AG

Jan-Martin Rämer

23.05.2011

Übersicht

GleitobjekteUmgebungen

Positionierung

TitelReferenzen

AbbildungenTabellen: tabular-Umgebung

Inhaltmulticolumn

lange TabellenProfessionelle Tabellen: booktabsAusrichtung an Kommas: dcolumn

Codelistings

Text�uÿ um Gleitobjekte

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 2 / 27

Gleitobjekte

Problem

I LATEX macht Textsatz → Blocksatz, Zeilenumbrüche, . . .I Tabellen, Gra�ken, etc. oft notwendig . . .I . . . und am Besten beim relevanten Text

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 3 / 27

Gleitobjekte

Problem

I LATEX macht Textsatz → Blocksatz, Zeilenumbrüche, . . .I Tabellen, Gra�ken, etc. oft notwendig . . .I . . . und am Besten beim relevanten Text

Lösung: Gleitobjekte

I werden von LATEX positioniertI wenn möglich nah am BefehlI wenn nötig verschoben

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 3 / 27

Abbildung: einfache Gleitobjekte

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 4 / 27

Umgebungen

I Abbildungen: figureI Tabellen: tableI Codelistings: lstlisting (Besonderheiten beachten!)I Inhalt beliebig (Tabelle in figure möglich)

1 \begin{figure }[ position]

2 Inhalt

3 \caption{Titel}

4 \end{figure}

Listing 1: Sourcecode für figure

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 5 / 27

Positionierung

I genaue Positionierung: LATEXI ungefähre Positionierung über (optionales) Argument:

\begin{figure}[pos]

Werte für �pos�

h �here� (if possible)

t �top� (der Seite)

b �bottom�

p �page of �oats� (eigene Seite für Gleitobjekte)

! überschreibt LATEX-Positionierung

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 6 / 27

Positionierung

Werte für �pos�

h �here� (if possible)

t �top� (der Seite)

b �bottom�

p �page of �oats� (eigene Seite für Gleitobjekte)

! überschreibt LATEX-Positionierung

I mehrere Werte möglich:I Reihenfolge legt Priorität festI nicht angegebene Positionen werden ignoriertI Standard: tbp

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 6 / 27

(vereinfachte) Platzierungsregeln

I möglichst frühI aber nicht vor De�nitionI Reihenfolge (verschiedener Gleitobjekte) erhaltenI Gleitobjekte sammeln, wenn Seitenlayout mit diesen nicht schönI Ausgabe kann erzwungen werden

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 7 / 27

(vereinfachte) Platzierungsregeln

I möglichst frühI aber nicht vor De�nitionI Reihenfolge (verschiedener Gleitobjekte) erhaltenI Gleitobjekte sammeln, wenn Seitenlayout mit diesen nicht schönI Ausgabe kann erzwungen werden

mit Seitenumbruch: \clearpage

I gibt alle �schwebenden� Gleitobjekte ausI erzeugt danach Seitenumbruch

ohne Seitenumbruch: \FloatBarrier

I gibt alle �schwebenden� Gleitobjekte ausI setzt danach Seite normal fortI braucht Paket �placeins�

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 7 / 27

Titel

I innerhalb der UmgebungI \caption{Titel}

I �Abbildung� und �Tabelle� mit Nummer automatischI kann mit Paket caption umformatiert werdenI Ändern von �Abbildung�:

\renewcommand{\figurename}{neuer Titel}

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 8 / 27

Titel

I Paket: captionI Optionen im \usepackage-Befehl

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 9 / 27

Titel

I Paket: captionI Optionen im \usepackage-Befehl

Beispiel

1 \usepackage[margin =2em ,labelfont=bf,sf,font=sl,small

]{ caption}

Listing 2: Beispiel zu Caption

I margin=2em: Rand der Breite 2 em auf beiden SeitenI labelfont=bf,sf: Namen des Floats: fett und serifenlosI font=sl,small: Beschreibung: slanted geneigt und klein

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 9 / 27

Referenzen

I Nummerierung erfolgt automatischI ein Zähler pro TypI Referenzierung: \label und \ref

I \label in \caption

1 \begin{figure}

2 Inhalt

3 \caption{Beispielabbildung \label{bspabb }}

4 \end{figure}

Listing 3: Beispiel: caption in �gure

1 Im Text kann man auf Abbildung \ref{bspabb}

verweisen.

Listing 4: Beispiel: Referenz

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 10 / 27

Referenzen: Verzeichnisse

I ein Zähler pro Typ → ein Verzeichnis pro TypI analog zum Inhaltsverzeichnis:

I mehrere (pdf)latex-DurchläufeI Ausgabebefehl nötig

I Ausgabebefehle:I \listoffiguresI \listoftablesI \lstlistoflistingsI . . .

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 11 / 27

Abbildungen

I Paket graphicxI in figure-Umgebung mit \includegraphicsI optionales Argument für includegraphics: width

z.B. [width=.5\textwidth] = 12 der Textbreite

I für Unterabbildungen: Paket subfigure

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 12 / 27

Abbildungen

I Paket graphicxI in figure-Umgebung mit \includegraphicsI optionales Argument für includegraphics: width

z.B. [width=.5\textwidth] = 12 der Textbreite

I für Unterabbildungen: Paket subfigure

1 \begin{figure}

2 \subfigure[Frosch ]{\ includegraphics{frosch }}

3 \subfigure[Kakadu ]{\ includegraphics{kakadu }}

4 \subfigure[Pinguin ]{\ includegraphics{pinguin }}

5 \caption{Tiere}

6 \end{figure}

Listing 5: Unterabbildungen

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 12 / 27

Abbildungen

(a) Frosch (b) Kakadu (c) Pinguin

Abbildung: Tiere

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 12 / 27

Abbildungen

I ohne NummerierungI trotzdem nebeneinanderI Lösung: MinipagesI Umgebung: minipage

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 13 / 27

Abbildungen

1 \begin{figure}

2 \begin{minipage }[b]{.3\ textwidth}

3 \includegraphics[width=\ textwidth ]{ frosch}

4 \caption{Frosch}

5 \end{minipage}

6 \begin{minipage }[b]{.3\ textwidth}

7 \includegraphics[width=\ textwidth ]{ kakadu}

8 \caption{Kakadu}

9 \end{minipage}

10 \begin{minipage }[b]{.3\ textwidth}

11 \includegraphics[width=\ textwidth ]{tux}

12 \caption{Pinguin}

13 \end{minipage}

14 \end{figure}

Listing 6: Unterabbildungen

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 13 / 27

Abbildungen

Abbildung: Frosch Abbildung: Kakadu Abbildung: Pinguin

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 13 / 27

Tabellen: tabular-Umgebung

I table-Umgebung de�niert das GleitobjektI tabular-Umgebung de�niert die eigentliche TabelleI Syntax: \begin{tabular}{Spaltendefinition}

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27

Tabellen: tabular-Umgebung

I table-Umgebung de�niert das GleitobjektI tabular-Umgebung de�niert die eigentliche TabelleI Syntax: \begin{tabular}{Spaltendefinition}

Spaltende�nition

c center

l left

r right

p{width} paragraph (Umbrüche möglich)

| vertikale Linie

@{text} Text in jeder Zeile (ohne automatischen Spaltenabstand)

*{n}{def} wiederholt def n-mal

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27

Tabellen: tabular-Umgebung

I table-Umgebung de�niert das GleitobjektI tabular-Umgebung de�niert die eigentliche TabelleI Syntax: \begin{tabular}{Spaltendefinition}

Spaltende�nition

c center

l left

r right

p{width} paragraph (Umbrüche möglich)

| vertikale Linie

@{text} Text in jeder Zeile (ohne automatischen Spaltenabstand)

*{n}{def} wiederholt def n-mal

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27

Tabellen: tabular-Umgebung

I table-Umgebung de�niert das GleitobjektI tabular-Umgebung de�niert die eigentliche TabelleI Syntax: \begin{tabular}{Spaltendefinition}

Spaltende�nition

c center

l left

r right

p{width} paragraph (Umbrüche möglich)

| vertikale Linie

@{text} Text in jeder Zeile (ohne automatischen Spaltenabstand)

*{n}{def} wiederholt def n-mal

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27

tabular: Inhalt

I Zelleninhalt beliebig (Text, Formeln, Tabellen,. . . )I ähnlich wie Positionierung in Formeln

Befehle in tabular

& Spaltentrennung

\\ Zeilentrennung

\hline horizontale Linie (ganze Breite)

\cline{n-m} horizontale Linie, Spalten n-m

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 15 / 27

tabular: Beispiel

1 \begin{tabular }{|*{2}{l|} r@{-}l|}\ hline

2 Funktion&Pl"atze&& Nummer \\\ hline\hline

3 H"orsaal &123&46 HS &280\\\ hline

4 Seminarraum &30&46&387\\\ hline

5 Fachschaft & -&46&352\\\ hline

6 \end{tabular}

Listing 7: tabular: Beispiel

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 16 / 27

tabular: Beispiel

1 \begin{tabular }{|*{2}{l|} r@{-}l|}\ hline

2 Funktion&Pl"atze&& Nummer \\\ hline\hline

3 H"orsaal &123&46 HS &280\\\ hline

4 Seminarraum &30&46&387\\\ hline

5 Fachschaft & -&46&352\\\ hline

6 \end{tabular}

Listing 8: tabular: Beispiel

Funktion Plätze -Nummer

Hörsaal 123 46HS-280Seminarraum 30 46-387Fachschaft - 46-352

Tabelle: Beispieltabelle

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 16 / 27

multicolumn

I eine Zelle über mehrere SpaltenI \multicolumn{n}{def}{text}

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 17 / 27

multicolumn

I eine Zelle über mehrere SpaltenI \multicolumn{n}{def}{text}

1 \begin{tabular }{|*{2}{l|} r@{-}l|}\ hline

2 Funktion&Pl"atze&\ multicolumn {2}{c|}{ Nummer

}\\\ hline\hline

3 H"orsaal &123&46 HS &280\\\ hline

4 Seminarraum &30&46&387\\\ hline

5 Fachschaft & -&46&352\\\ hline

6 \end{tabular }\\}

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 17 / 27

multicolumn

I eine Zelle über mehrere SpaltenI \multicolumn{n}{def}{text}

1 \begin{tabular }{|*{2}{l|} r@{-}l|}\ hline

2 Funktion&Pl"atze&\ multicolumn {2}{c|}{ Nummer

}\\\ hline\hline

3 H"orsaal &123&46 HS &280\\\ hline

4 Seminarraum &30&46&387\\\ hline

5 Fachschaft & -&46&352\\\ hline

6 \end{tabular }\\}

Funktion Plätze Nummer

Hörsaal 123 46HS-280Seminarraum 30 46-387Fachschaft - 46-352

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 17 / 27

lange Tabellen

I Paket: longtableI Umgebung: longtable (statt table und tabular)I mehrere Durchläufe

Befehle

\endfirsthead Ende des Kopfes der ersten Seite

\endhead Ende des Kopfes der folgenden Seiten

\endlastfoot Ende der Fuÿzeile des letzten Seite

\endfoot Ende der Fuÿzeile der vorherigen Seiten

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 18 / 27

longtable: Beispielcode

1 \begin{longtable }{|l|l|l|}\ hline

2 \multicolumn {3}{|c|}{ Rechneradressen }\\\ hline

3 Hostname&IPv4-Adresse&IPv6-Adresse \\\ hline

4 \endfirsthead

5 Hostname&IPv4-Adresse&IPv6-Adresse \\\ hline

6 \endhead

7 \multicolumn {3}{|c|}{\ footnotesize weiter auf n"

achster Seite }\\\ hline

8 \endfoot

9 \endlastfoot

10 sushi.unix -ag.uni -kl.de &131.246.124.65&2001:638:208:

ef 34:0:ff:fe 00:65\\\ hline

11 ...

12 \end{longtable}

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 19 / 27

Professionelle Tabellen: booktabs

I Paket: booktabsI hübschere TabellenI Design:

I keine vertikalen LinienI keine doppelten LinienI etwas mehr Abstand über dem TextI führt neue Befehle ein

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 20 / 27

Professionelle Tabellen: booktabs

I Paket: booktabsI hübschere TabellenI Design:

I keine vertikalen LinienI keine doppelten LinienI etwas mehr Abstand über dem TextI führt neue Befehle ein

booktabs-Befehle

I toprule: Linie über dem KopfI midrule: Linie unter dem Kopf/in der TabelleI bottomrule: Linie am Ende der TabelleI cmidrule{n-m}: Ersetzt crule

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 20 / 27

booktabs: Beispiel

1 \begin{tabular }{*{2}{l} r@{-}l}

2 \toprule

3 Funktion&Pl"atze&\ multicolumn {2}{c}{ Nummer }\\

4 \midrule

5 H"orsaal &123&46 HS &280\\

6 Seminarraum &30&46&387\\

7 Fachschaft & -&46&352\\

8 \bottomrule

9 \end{tabular}

Listing 9: booktabs: Beispiel

Funktion Plätze Nummer

Hörsaal 123 46HS-280Seminarraum 30 46-387Fachschaft - 46-352

Tabelle: Tabelle mit booktabsJan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 21 / 27

Ausrichtung an Kommas: dcolumn

I Paket: dcolumnI neue Spaltende�nition:

D{Eingabetrenner}{Ausgabetrenner}{Nachkommastellen}

Eingabetrenner Zeichen im Quellcode, an dem ausgerichtetwird

Ausgabetrenner ersetzt Eingabetrenner in AusgabeNachkommastellen Anzahl der Nachkommastellen, für die

Platz gelassen wird

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 22 / 27

dcolumn: Beispiel

1 \begin{tabular }{|D{ ,}{.}{3}|D{ ,}{.}{ -1}|}\ hline

2 1.234 &1 ,234\\

3 123.45 &123 ,45\\

4 0.123456&\\

5 &0 ,123456\\

6 .123 &1.234\\

7 0 &0\\

8 \end{tabular}

Listing 10: Beispiel zu dcolumn

1.234 1.234123.45 123.45

0.1234560.123456

.123 1.2340 0

Tabelle: Beispiel zu dcolumnJan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 23 / 27

Codelistings

I Paket: listingsI alles zwischen \begin{lstlisting} und \end{lstlisting}

wird als Code ausgegeben→ \caption etc. funktioniert nicht

I Lösung: optionale ArgumenteI \begin{lstlisting}[caption=Titel des

Listings,float=tbp,label=code:lst1,...]

I analoge Befehle, nur andere Position

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 24 / 27

Codelistings

I Paket: listingsI alles zwischen \begin{lstlisting} und \end{lstlisting}

wird als Code ausgegeben→ \caption etc. funktioniert nicht

I Lösung: optionale ArgumenteI \begin{lstlisting}[caption=Titel des

Listings,float=tbp,label=code:lst1,...]

I analoge Befehle, nur andere Position

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 24 / 27

Text�uÿ um Gleitobjekte

I normalerweise kein Text�uÿ um GleitobjekteI für kleine Abbildungen oder Tabellen unschönI braucht Paket(e)I hier: wrapfigI Vorteil: Für Tabellen und AbbildungenI Alternativ z.B. floatflt

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 25 / 27

wrapfig

I figure → wrapfigure

I table → wraptable

I jeweils zwei weitere Argumente:I Position: l(eft), r(ight), o(utside) oder i(nside)I Position groÿ: GleitobjektI Breite

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 26 / 27

wrapfig

I figure → wrapfigureI table → wraptableI jeweils zwei weitere Argumente:

I Position: l(eft), r(ight), o(utside) oder i(nside)I Position groÿ: GleitobjektI Breite

1 \begin{wrapfigure }{r}{.5\ textwidth}

2 \includegraphics[width =.5\ textwidth ]{ frosch}

3 \caption{Frosch}

4 \end{wrapfigure}

5 \begin{wraptable }{l}{.5\ textwidth}

6 \begin{tabular }{|l|l|}\ hline

7 Tier&Farbe\\

8 Frosch&gr"u\\

9 Kakadu&wei"s\\

10 \end{tabular}

11 \end{wraptable}Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 26 / 27

wrapfig: Beispiel

Abbildung: wrapfig-Beispiel

Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 27 / 27