Tabellen und Abbildungen: Gleitobjekte - LaTeX-Kurs der Unix-AG
Transcription
Tabellen und Abbildungen: Gleitobjekte - LaTeX-Kurs der Unix-AG
Tabellen und Abbildungen: Gleitobjekte ATEX-Kurs der Unix-AG L Jan-Martin Rämer 23.05.2011 Übersicht Gleitobjekte Umgebungen Positionierung Titel Referenzen Abbildungen Tabellen: tabular-Umgebung Inhalt multicolumn lange Tabellen Professionelle Tabellen: booktabs dcolumn Ausrichtung an Kommas: Codelistings Textuÿ um Gleitobjekte Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 2 / 27 Gleitobjekte Problem ATEX macht Textsatz I L → Blocksatz, Zeilenumbrüche, . . . I Tabellen, Graken, 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 ATEX macht Textsatz I L → Blocksatz, Zeilenumbrüche, . . . I Tabellen, Graken, etc. oft notwendig . . . I . . . und am Besten beim relevanten Text Lösung: Gleitobjekte ATEX positioniert I werden von L I wenn möglich nah am Befehl I wenn nötig verschoben Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 3 / 27 Abbildung: Jan-Martin Rämer einfache Gleitobjekte Tabellen und Abbildungen: Gleitobjekte 23.05.2011 4 / 27 Umgebungen figure Tabellen: table Codelistings: lstlisting I Abbildungen: I I I Inhalt beliebig (Tabelle in 1 2 3 4 (Besonderheiten beachten!) figure möglich) \ begin { figure }[ position ] Inhalt \ caption { Titel } \ end { figure } Listing 1: Sourcecode für Jan-Martin Rämer figure Tabellen und Abbildungen: Gleitobjekte 23.05.2011 5 / 27 Positionierung ATEX I genaue Positionierung: L I 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 fest I nicht angegebene Positionen werden ignoriert I Standard: Jan-Martin Rämer tbp Tabellen und Abbildungen: Gleitobjekte 23.05.2011 6 / 27 (vereinfachte) Platzierungsregeln I möglichst früh I aber nicht vor Denition I Reihenfolge (verschiedener Gleitobjekte) erhalten I Gleitobjekte sammeln, wenn Seitenlayout mit diesen nicht schön I Ausgabe kann erzwungen werden Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 7 / 27 (vereinfachte) Platzierungsregeln I möglichst früh I aber nicht vor Denition I Reihenfolge (verschiedener Gleitobjekte) erhalten I Gleitobjekte sammeln, wenn Seitenlayout mit diesen nicht schön I Ausgabe kann erzwungen werden mit Seitenumbruch: \clearpage I gibt alle schwebenden Gleitobjekte aus I erzeugt danach Seitenumbruch ohne Seitenumbruch: \FloatBarrier I gibt alle schwebenden Gleitobjekte aus I setzt danach Seite normal fort I braucht Paket placeins Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 7 / 27 Titel I innerhalb der Umgebung I \caption{Titel} I Abbildung und Tabelle mit Nummer automatisch I kann mit Paket caption umformatiert werden I Ändern von Abbildung: \renewcommand{\figurename}{neuer Titel} Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 8 / 27 Titel caption Optionen im \usepackage-Befehl I Paket: I Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 9 / 27 Titel caption Optionen im \usepackage-Befehl I Paket: I Beispiel 1 \ usepackage [ margin =2 em , labelfont = bf , sf , font = sl , small ]{ caption } Listing 2: Beispiel zu Caption I I I margin=2em: Rand der Breite 2 em auf beiden Seiten labelfont=bf,sf: Namen des Floats: fett und serifenlos 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 automatisch I ein Zähler pro Typ \label \caption I Referenzierung: I 1 2 3 4 \label in und \ref \ begin { figure } Inhalt \ caption { Beispielabbildung \ label { bspabb }} \ 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 Typ I analog zum Inhaltsverzeichnis: (pdf)latex-Durchläufe I mehrere I Ausgabebefehl nötig I Ausgabebefehle: I I I I Jan-Martin Rämer \listoffigures \listoftables \lstlistoflistings ... Tabellen und Abbildungen: Gleitobjekte 23.05.2011 11 / 27 Abbildungen graphicx figure-Umgebung I Paket \includegraphics optionales Argument für includegraphics: width 1 z.B. [width=.5\textwidth] = 2 der Textbreite für Unterabbildungen: Paket subfigure I in I I Jan-Martin Rämer mit Tabellen und Abbildungen: Gleitobjekte 23.05.2011 12 / 27 Abbildungen graphicx figure-Umgebung I Paket \includegraphics optionales Argument für includegraphics: width 1 z.B. [width=.5\textwidth] = 2 der Textbreite für Unterabbildungen: Paket subfigure I in I I 1 2 3 4 5 6 mit \ begin { figure } \ subfigure [ Frosch ]{\ includegraphics { frosch }} \ subfigure [ Kakadu ]{\ includegraphics { kakadu }} \ subfigure [ Pinguin ]{\ includegraphics { pinguin }} \ caption { Tiere } \ end { figure } Listing 5: Unterabbildungen Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 12 / 27 Abbildungen (a) Frosch (b) Kakadu Abbildung: Jan-Martin Rämer (c) Pinguin Tiere Tabellen und Abbildungen: Gleitobjekte 23.05.2011 12 / 27 Abbildungen I ohne Nummerierung I trotzdem nebeneinander I Lösung: Minipages I Umgebung: Jan-Martin Rämer minipage Tabellen und Abbildungen: Gleitobjekte 23.05.2011 13 / 27 Abbildungen 1 2 3 4 5 6 7 8 9 10 11 12 13 14 \ begin { figure } \ begin { minipage }[ b ]{.3\ textwidth } \ includegraphics [ width =\ textwidth ]{ frosch } \ caption { Frosch } \ end { minipage } \ begin { minipage }[ b ]{.3\ textwidth } \ includegraphics [ width =\ textwidth ]{ kakadu } \ caption { Kakadu } \ end { minipage } \ begin { minipage }[ b ]{.3\ textwidth } \ includegraphics [ width =\ textwidth ]{ tux } \ caption { Pinguin } \ end { minipage } \ end { figure } Listing 6: Unterabbildungen Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 13 / 27 Abbildungen Abbildung: Jan-Martin Rämer Frosch Abbildung: Kakadu Tabellen und Abbildungen: Gleitobjekte Abbildung: Pinguin 23.05.2011 13 / 27 Tabellen: tabular-Umgebung I I I table-Umgebung deniert das Gleitobjekt tabular-Umgebung deniert die eigentliche Tabelle Syntax: \begin{tabular}{Spaltendefinition} Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27 Tabellen: tabular-Umgebung I I I table-Umgebung deniert das Gleitobjekt tabular-Umgebung deniert die eigentliche Tabelle Syntax: \begin{tabular}{Spaltendefinition} Spaltendenition c center l left r right p{width} paragraph (Umbrüche möglich) Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27 Tabellen: tabular-Umgebung I I I table-Umgebung deniert das Gleitobjekt tabular-Umgebung deniert die eigentliche Tabelle Syntax: \begin{tabular}{Spaltendefinition} Spaltendenition c center l left r right p{width} paragraph (Umbrüche möglich) | vertikale Linie @{text} Text in jeder Zeile (ohne automatischen Spaltenabstand) Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 14 / 27 Tabellen: tabular-Umgebung I I I table-Umgebung deniert das Gleitobjekt tabular-Umgebung deniert die eigentliche Tabelle Syntax: \begin{tabular}{Spaltendefinition} Spaltendenition 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 Jan-Martin Rämer def n-mal 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: 1 2 3 4 5 6 Beispiel \ begin { tabular }{|*{2}{ l |} r@ { -} l |}\ hline Funktion & Pl " atze && Nummer \\\ hline \ hline H " orsaal &123&46 HS &280\\\ hline Seminarraum &30&46&387\\\ hline Fachschaft & -&46&352\\\ hline \ end { tabular } Listing 7: Jan-Martin Rämer tabular: Beispiel Tabellen und Abbildungen: Gleitobjekte 23.05.2011 16 / 27 tabular: 1 2 3 4 5 6 Beispiel \ begin { tabular }{|*{2}{ l |} r@ { -} l |}\ hline Funktion & Pl " atze && Nummer \\\ hline \ hline H " orsaal &123&46 HS &280\\\ hline Seminarraum &30&46&387\\\ hline Fachschaft & -&46&352\\\ hline \ end { tabular } Listing 8: tabular: Funktion Plätze Hörsaal 123 Seminarraum 30 46-387 Fachschaft - 46-352 Tabelle: Jan-Martin Rämer Beispiel -Nummer 46HS-280 Beispieltabelle Tabellen und Abbildungen: Gleitobjekte 23.05.2011 16 / 27 multicolumn I eine Zelle über mehrere Spalten I \multicolumn{n}{def}{text} Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 17 / 27 multicolumn I eine Zelle über mehrere Spalten I 1 2 3 4 5 6 \multicolumn{n}{def}{text} \ begin { tabular }{|*{2}{ l |} r@ { -} l |}\ hline Funktion & Pl " atze &\ multicolumn {2}{ c |}{ Nummer }\\\ hline \ hline H " orsaal &123&46 HS &280\\\ hline Seminarraum &30&46&387\\\ hline Fachschaft & -&46&352\\\ hline \ end { tabular }\\} Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 17 / 27 multicolumn I eine Zelle über mehrere Spalten I 1 2 3 4 5 6 \multicolumn{n}{def}{text} \ begin { tabular }{|*{2}{ l |} r@ { -} l |}\ hline Funktion & Pl " atze &\ multicolumn {2}{ c |}{ Nummer }\\\ hline \ hline H " orsaal &123&46 HS &280\\\ hline Seminarraum &30&46&387\\\ hline Fachschaft & -&46&352\\\ hline \ end { tabular }\\} Jan-Martin Rämer Funktion Plätze Nummer Hörsaal 123 Seminarraum 30 46-387 Fachschaft - 46-352 46HS-280 Tabellen und Abbildungen: Gleitobjekte 23.05.2011 17 / 27 lange Tabellen longtable Umgebung: longtable I Paket: I (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: 1 2 3 4 5 6 7 8 9 10 11 12 Beispielcode \ begin { longtable }{| l | l | l |}\ hline \ multicolumn {3}{| c |}{ Rechneradressen }\\\ hline Hostname & IPv 4 - Adresse & IPv 6 - Adresse \\\ hline \ endfirsthead Hostname & IPv 4 - Adresse & IPv 6 - Adresse \\\ hline \ endhead \ multicolumn {3}{| c |}{\ footnotesize weiter auf n " achster Seite }\\\ hline \ endfoot \ endlastfoot sushi . unix - ag . uni - kl . de &131.246.124.65&2001:638:208: ef 34:0: ff : fe 00:65\\\ hline ... \ end { longtable } Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 19 / 27 Professionelle Tabellen: booktabs I Paket: booktabs I hübschere Tabellen I Design: I keine vertikalen Linien I keine doppelten Linien I etwas mehr Abstand über dem Text I führt neue Befehle ein Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 20 / 27 Professionelle Tabellen: booktabs I Paket: booktabs I hübschere Tabellen I Design: I keine vertikalen Linien I keine doppelten Linien I etwas mehr Abstand über dem Text I führt neue Befehle ein booktabs-Befehle I I I I toprule: Linie über dem Kopf midrule: Linie unter dem Kopf/in der Tabelle bottomrule: Linie am Ende der Tabelle cmidrule{n-m}: Ersetzt crule Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 20 / 27 booktabs: 1 2 3 4 5 6 7 8 9 Beispiel \ begin { tabular }{*{2}{ l } r@ { -} l } \ toprule Funktion & Pl " atze &\ multicolumn {2}{ c }{ Nummer }\\ \ midrule H " orsaal &123&46 HS &280\\ Seminarraum &30&46&387\\ Fachschaft & -&46&352\\ \ bottomrule \ end { tabular } Listing 9: Jan-Martin Rämer booktabs: Beispiel Funktion Plätze Nummer Hörsaal 123 Seminarraum 30 46-387 Fachschaft - 46-352 46HS-280 booktabs Tabellen und Abbildungen: Gleitobjekte Tabelle: Tabelle mit 23.05.2011 21 / 27 Ausrichtung an Kommas: dcolumn I Paket: dcolumn I neue Spaltendenition: D{Eingabetrenner}{Ausgabetrenner}{Nachkommastellen} Eingabetrenner Zeichen im Quellcode, an dem ausgerichtet wird Ausgabetrenner ersetzt Eingabetrenner in Ausgabe Nachkommastellen Anzahl der Nachkommastellen, für die Platz gelassen wird Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 22 / 27 dcolumn: 1 2 3 4 5 6 7 8 Beispiel \ begin { tabular }{| D { ,}{.}{3}| D { ,}{.}{ -1}|}\ hline 1.234 &1 ,234\\ 123.45 &123 ,45\\ 0.123456&\\ &0 ,123456\\ .123 &1.234\\ 0 &0\\ \ end { tabular } Listing 10: Beispiel zu 1.234 123.45 0.123456 .123 0 Jan-Martin Rämer dcolumn 1.234 123.45 0.123456 1.234 0 Tabellen und Abbildungen: Gleitobjekte 23.05.2011 23 / 27 Codelistings listings zwischen \begin{lstlisting} I Paket: I alles und \end{lstlisting} wird als Code ausgegeben → \caption Jan-Martin Rämer etc. funktioniert nicht Tabellen und Abbildungen: Gleitobjekte 23.05.2011 24 / 27 Codelistings listings zwischen \begin{lstlisting} I Paket: I alles und \end{lstlisting} wird als Code ausgegeben → \caption etc. funktioniert nicht I Lösung: optionale Argumente I \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 Textuÿ um Gleitobjekte I normalerweise kein Textuÿ um Gleitobjekte I für kleine Abbildungen oder Tabellen unschön I braucht Paket(e) I hier: wrapfig I Vorteil: Für Tabellen und Abbildungen I Alternativ z.B. Jan-Martin Rämer floatflt Tabellen und Abbildungen: Gleitobjekte 23.05.2011 25 / 27 wrapfig I I figure → wrapfigure table → wraptable I jeweils zwei weitere Argumente: I Position: l(eft), r(ight), o(utside) oder i(nside) I Position groÿ: Gleitobjekt I Breite Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 26 / 27 wrapfig I I figure → wrapfigure table → wraptable I jeweils zwei weitere Argumente: 1 2 3 4 5 6 7 8 9 10 11 I Position: l(eft), r(ight), o(utside) oder i(nside) I Position groÿ: Gleitobjekt I Breite \ begin { wrapfigure }{ r }{.5\ textwidth } \ includegraphics [ width =.5\ textwidth ]{ frosch } \ caption { Frosch } \ end { wrapfigure } \ begin { wraptable }{ l }{.5\ textwidth } \ begin { tabular }{| l | l |}\ hline Tier & Farbe \\ Frosch & gr " u \\ Kakadu & wei " s \\ \ end { tabular } \ end { wraptable } Jan-Martin Rämer Tabellen und Abbildungen: Gleitobjekte 23.05.2011 26 / 27 wrapfig: Beispiel Abbildung: Jan-Martin Rämer wrapfig-Beispiel Tabellen und Abbildungen: Gleitobjekte 23.05.2011 27 / 27