\documentclass{latexkurs} \subtitle{Tabellen, Bilder und Verweise} \date{2015-11-23} \begin{document} \begin{frame} \frametitle{Ziel dieses Abschnitts} \begin{itemize} \item Tabellen \item Bilder einbinden (nicht erstellen!) \item Abbildungen \item Verweise innerhalb eines Dokuments \end{itemize} \end{frame} \section{Tabellen} \begin{frame}[fragile] \frametitle{Tabellen} \onslide<1-> \LaTeX\ stellt die Grundfunktionalität für Tabellen bereit \begin{columns} \begin{column}{0.4\linewidth} \begin{block}<3->{} \begin{lstlisting} \begin{tabular}{lr|c||l} \hline 11 & 22 & 33 & 44 \\ \hline\hline 5 & 6 & 7 & 8 \\ 9 & 0 & 1 & 2 \\ \hline \end{tabular} \end{lstlisting} \end{block} \end{column} \begin{column}{0.5\linewidth} \centering \onslide<2->{% \begin{tabular}{lr|c||l} \hline 11 & 22 & 33 & 44 \\ \hline\hline 5 & 6 & 7 & 8 \\ 9 & 0 & 1 & 2 \\ \hline \end{tabular} } \end{column} \end{columns} \begin{itemize} \item<4-> \lstinline!{lr|c||l}! ist das \emph{Tabellenformat} \item<5-> Spalten werden mit \lstinline|&| unterteilt \item<6-> Zeilen werden mit \lstinline|\\| beendet \item<7-> \lstinline|\hline| ergibt eine horizontale Linie \end{itemize} \end{frame} \begin{frame}[fragile] \frametitle{Tabellen} \onslide<+-> \begin{itemize} \item<+-> Tabellenformat \onslide<+-> \begin{itemize} \item \lstinline|c| ergibt eine zentrierte Spalte \item \lstinline|r| ergibt eine rechtsbündige Spalte \item \lstinline|l| ergibt eine linksbündige Spalte \item \lstinline!p{5cm}! ergibt eine Spalte der Breite 5cm \item \lstinline!|! ergibt eine vertikale Linie \end{itemize} \item<+-> \lstinline!\cline{4-7}! ergibt eine vertikale Linie von Spalte 4 bis Spalte 7 \item<+-> \lstinline!\multicolumn{3}{|c|}{Inhalt}! formatiert die nächsten drei Spalten im Format \lstinline!|c|! mit \lstinline!Inhalt! \end{itemize} \onslide<+-> \medskip \begin{center} \begin{tabular}{|lr|c|p{2cm}|} Hier & geht's & RUND! & \dots \\ \hline\hline 1 & 2 & \multicolumn{2}{c}{ DreiDreiDrei! } \\ \cline{2-3} 4 & 5 & 6 & 7 \end{tabular} \end{center} \end{frame} \begin{frame}[fragile] \frametitle{Tabellenlayout (modern)} \onslide<+-> Schönere Tabellenstriche mittels \begin{lstlisting} \usepackage{booktabs} \end{lstlisting} \onslide<+-> \bigskip Dann: \begin{columns} \begin{column}{0.55\linewidth} \begin{lstlisting} \begin{tabular}{l|cr} \toprule Tabelle & Kopf & Kopf \\ \midrule Zeile & Zelle & Zelle \\ Zeile & Zelle & Zelle \\ \bottomrule \end{tabular} \end{lstlisting} \end{column} \begin{column}{0.45\linewidth} \centering \begin{tabular}{l|cr} \toprule Tabelle & Kopf & Kopf \\ \midrule Zeile & Zelle & Zelle \\ Zeile & Zelle & Zelle \\ \bottomrule \end{tabular} \end{column} \end{columns} \end{frame} \begin{frame} \frametitle{Pakete für Tabellen} \onslide<+-> Es gibt eine Reihe von nützlichen Paketen für Tabellen \begin{itemize} \item<+-> \lstinline!array! für erweiterte Tabellenformate (und kleine Korrekturen) \item<+-> \lstinline!tabularx! für noch mehr Tabellenformate \item<+-> \lstinline!longtable! für Tabellen, die über mehrere Seiten gehen \item<+-> \dots \end{itemize} \end{frame} \section{Bilder einbinden} \begin{frame}[fragile] \frametitle{Bilder einbinden} \onslide<+-> \begin{itemize} \item Einbinden von Graphiken in \LaTeX\ mit Hilfe des Pakets \texttt{graphicx} \item Befehl \begin{lstlisting} \includegraphics[(*@\textit{Optionen}@*)]{(*@\textit{Bildname}@*)} \end{lstlisting} \end{itemize} \onslide<+-> \begin{Beispiel} \begin{lstlisting} \centerline{\includegraphics[width=0.3\linewidth]{bild.jpg}} \end{lstlisting} ergibt \centerline{\includegraphics[width=0.3\linewidth]{pics/bild.jpg}} \end{Beispiel} \end{frame} \begin{frame}[fragile] \frametitle{Optionen zum Einbinden von Graphiken} \onslide<+-> Oft verwendete Optionen von \lstinline{\includegraphics} sind \begin{itemize} \item \texttt{width}, \texttt{height} für Breite und Höhe \item \texttt{keepaspectratio}, so dass nach Angabe von Breite und Höhe das Bild korrekt skaliert wird \item \texttt{scale} zur Skalierung des Bildes \item \texttt{angle} zur Angabe eines Drehwinkels \item \texttt{origin} zur Angabe des Drehpunktes \end{itemize} \onslide<+-> \begin{Beispiel} \begin{lstlisting} \centerline{\includegraphics[scale=1.2,origin=cc, angle=42]{bild.jpg}} \end{lstlisting} \centerline{\includegraphics[scale=1.2,origin=cc,angle=42]{pics/bild.jpg}} \end{Beispiel} \end{frame} \begin{frame}[fragile] \frametitle{Weitere Befehle aus \texttt{graphicx}} \onslide<+-> \begin{itemize}[<+->] \item Drehen von Inhalten mit \lstinline!\rotatebox[$\textit{Optionen}$]{$\textit{Winkel}$}{$\textit{Inhalt}$}! \onslide<+-> \begin{lstlisting} \rotatebox[origin=lB]{-30}{TextTextTextText} \end{lstlisting} \rotatebox[origin=lB]{-30}{TextTextTextText} \item \lstinline!\resizebox{$\textit{Breite}$}{$\textit{Höhe}$}{$\textit{Text}$}! \onslide<+-> \begin{lstlisting} \resizebox{1cm}{.4cm}{Hier ist es eng...} \end{lstlisting} \resizebox{1cm}{.4cm}{Hier ist es eng...} \item \lstinline!\scalebox{$\textit{horizontal}$}[$\textit{vertikal}$]{$\textit{Text}$}! \onslide<+-> \begin{lstlisting} \scalebox{3}[-1]{Breitergehtnicht} \end{lstlisting} \scalebox{3}[-1]{Breitergehtnicht} \end{itemize} \end{frame} \begin{frame}[fragile] \frametitle{Ausblick: Grafiken erstellen} \begin{center} \begin{tikzpicture}[ thick, >=stealth', dot/.style = { draw, fill = white, circle, inner sep = 0pt, minimum size = 4pt } ] \coordinate (O) at (0,0); \draw[->] (-0.3,0) -- (8,0) coordinate[label = {below:$x$}] (xmax); \draw[->] (0,-0.3) -- (0,5) coordinate[label = {right:$f(x)$}] (ymax); \path[name path=x] (0.3,0.5) -- (6.7,4.7); \path[name path=y] plot[smooth] coordinates {(-0.3,2) (2,1.5) (4,2.8) (6,5)}; \scope[name intersections = {of = x and y, name = i}] \fill[gray!20] (i-1) -- (i-2 |- i-1) -- (i-2) -- cycle; \draw (0.3,0.5) -- (6.7,4.7) node[pos=0.8, below right] {Sekante}; \draw[red] plot[smooth] coordinates {(-0.3,2) (2,1.5) (4,2.8) (6,5)}; \draw (i-1) node[dot, label = {above:$P$}] (i-1) {} -- node[left,yshift=-3pt] {$f(x_0)$} (i-1 |- O) node[dot, label = {below:$x_0$}] {}; \path (i-2) node[dot, label = {above:$Q$}] (i-2) {} -- (i-2 |- i-1) node[dot] (i-12) {}; \draw (i-12) -- (i-12 |- O) node[dot, label = {below:$x_0 + \varepsilon$}] {}; \draw[blue, <->] (i-2) -- node[right] {$f(x_0 + \varepsilon) - f(x_0)$} (i-12); \draw[blue, <->] (i-1) -- node[below] {$\varepsilon$} (i-12); \path (i-1 |- O) -- node[below] {$\varepsilon$} (i-2 |- O); \draw[gray] (i-2) -- (i-2 -| xmax); \draw[gray, <->] ([xshift = -0.5cm]i-2 -| xmax) -- node[fill = white] {$f(x_0 + \varepsilon)$} ([xshift = -0.5cm]xmax); \endscope \end{tikzpicture} \end{center} \onslide<2->{mit \textcolor{red}{Ti\textit{k}Z} $\leadsto$ später!} \vfill\hbox{}\hfill\hbox{\tiny\url{http://www.texample.net/tikz/examples/linear-regression/}} \end{frame} \section{Abbildungen} \begin{frame}[fragile] \frametitle{Abbildungen} \begin{itemize} \item<+-> Größere Bilder und Tabellen werden mittels \emph{Gleitumgebungen} gesetzt: \onslide<+-> \begin{lstlisting} \begin{figure} $\dots$ \caption{Bildunterschrift} \end{figure} \end{lstlisting} \onslide<+-> \LaTeX\ platziert dann die Bilder auf der aktuellen oder auf einer der folgenden Seiten. \item<+-> Für Tabellen gibt es die spezielle \texttt{table}-Umgebung. \item<+-> Verzeichnisse für Abbildungen und Tabellen mit \lstinline!\listoffigures! und \lstinline!\listoftables!. \item<+-> Nützliches Paket: \lstinline!float!. \end{itemize} \end{frame} \begin{frame}[fragile] \frametitle{Platzierung von Abbildungen} \onslide<+-> Die Platzierung wird durch die entsprechenden \textit{Optionen} angegeben: \onslide<+-> \begin{description} \item[h] Platzierung an der aktuellen Stelle \item[t] Platzierung oben auf einer Seite \item[b] Platzierung unten auf einer Seite \item[p] Platzierung auf einer extra Seite \end{description} \onslide<+-> Optionen können gemischt werden. \onslide<+-> \begin{lstlisting} \begin{figure}[tp] Diese \enquote{Abbildung} erscheint entweder ober auf einer Seite, oder auf einer extra Seite. \caption{Bildunterschrift} \end{figure} \end{lstlisting} \end{frame} \section{Referenzieren} \begin{frame}[fragile] \frametitle{Verweise im Dokument} \onslide<+-> \LaTeX\ erlaubt die automatische Erstellung von Verweisen innerhalb des Dokuments \begin{itemize} \item<+-> mit dem Befehl \lstinline!\label{label-name}! wird ein \emph{Label} im Dokument gesetzt \item<+-> mit dem Befehl \lstinline!\ref{label-name}! wird auf dieses Label verwiesen \end{itemize} \onslide<+-> \begin{lstlisting} \section{Einführung} \label{sec:introduction} Das Problem, welches wir behandeln wollen, ist wichtig! \section{Das Problem} Siehe Abschnitt~\ref{sec:introduction}! \end{lstlisting} \onslide<+-> \emph{Wichtig}: Zweimaliges Übersetzen notwendig! \end{frame} \begin{frame}[fragile] \frametitle{Platzierung von Labeln} \onslide<+-> Die Formatierung von \lstinline!\ref{label-name}! hängt von dem Verweis ab. \onslide<+-> \begin{lstlisting} \section{Abschnitt} \label{sec:section} % Verweis auf Abschnittsnummer \begin{enumerate} \item\label{item:1} Eintrag % Verweis auf Einzelpunkt \end{enumerate} \begin{figure} $\dots$ \caption{\label{figure} Bildunterschrift} % Verweis auf Abbildung \end{figure} \end{lstlisting} \onslide<+-> Verweis auf die Seitenzahl mit \lstinline!\pageref{label-name}!. \end{frame} \begin{frame}[fragile] \frametitle{Nützliche Pakete} \onslide<+-> Es gibt einige nützliche Pakete, die Verweise besser formatieren können \begin{itemize} \item<+-> \lstinline!ntheorem! gibt den Befehl \lstinline!\thref{thm:main-theorem}!, welcher automatisch den Typ der Aussage hinzufügt (Satz~5.1, Lemma~5.1, Bemerkung~5.1, \dots) \item<+-> \lstinline!cleveref! gibt \lstinline!\cref! und weitere Befehle, welche automatisch den Typ der Referenz hinzufügen \item<+-> \lstinline!varioref! gibt \lstinline!\vref!, \lstinline!\vpageref!, und weitere, welche intelligente Formatierungen abhängig vom Abstand zwischen Referenz und Verweis erlauben \end{itemize} \end{frame} \end{document} %%% Local Variables: %%% mode: latex %%% TeX-master: t %%% TeX-engine: luatex %%% ispell-local-dictionary: "de_DE" %%% End: