maria eichlseder 21. oktober 2015 · 2015-10-21 · i code und pseudocode einsetzen k onnen i gra...
TRANSCRIPT
![Page 1: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/1.jpg)
ComputermathematikLATEX 2+3: Komplexe Dokumente & Grafiken
Maria Eichlseder
21. Oktober 2015
![Page 2: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/2.jpg)
Lern-Ziele
I Wissenschaftliche DokumenteI Dokumentstruktur planen
I ReferenzenI Bilder einsetzenI Referenzen verwendenI Zitieren
I AlgorithmenI Code und Pseudocode einsetzen konnen
I GrafikenI Diagramme sinnvoll einsetzenI Umsetzung in TikZ (o.a.)
1 / 39
![Page 3: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/3.jpg)
”Wissenschaftliche“ Dokumente
2 / 39
![Page 4: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/4.jpg)
”Wissenschaftliche“ Dokumente
Beispiele
I Publikationen
I Code-Dokumentation
I Skriptum
I Labor-Protokoll
I Technischer Bericht
I Bachelor-Arbeit
? LATEX-Dokumentklassen
I article, scrartcleinseitig, kurzere Artikel
I report, scrreprteinseitig, langere Dokumente
I book, scrbookzweiseitig (Druck)
I letter2, scrlttr2,beamer, moderncv,flashcards, . . .
3 / 39
![Page 5: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/5.jpg)
Beispiel: ScrArtcl
Lorem Ipsum
Mary Sue John Doe
October 21, 2014
Contents
1 A first section 11.1 With subsection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Another section 32.1 With yet another subsection . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1 A first section
1.1 With subsection
Hello, here is some text without a meaning. This text should show what a printedtext will look like at this place. sin2(α) + cos2(β) = 1. If you read this text, you willget no information E = mc2. Really? Is there no information? Is there a differencebetween this text and some nonsense like “Huardest gefburn”? Kjift – not at all! Ablind text like this gives you information about the selected font, how the letters arewritten and an impression of the look. n
√a · n√b = n
√ab. This text should contain all
letters of the alphabet and it should be written in of the original language.n√an√b
= n
√ab .
There is no need for special content, but the length of words should match the language.a n√b = n√anb.
x =1
n
i=n∑
i=1
xi =x1 + x2 + . . . + xn
n
Hello, here is some text without a meaning. dΩ = sinϑdϑdϕ. This text should showwhat a printed text will look like at this place. If you read this text, you will get noinformation. Really? Is there no information? Is there a difference between this text andsome nonsense like “Huardest gefburn”? Kjift – not at all! A blind text like this givesyou information about the selected font, how the letters are written and an impressionof the look. sin2(α) + cos2(β) = 1. This text should contain all letters of the alphabetand it should be written in of the original language E = mc2. There is no need for
1
4 / 39
![Page 6: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/6.jpg)
Beispiel: Book
Lorem Ipsum
Mary Sue John Doe
XXI Octobris MMXIV
+ Leerseite
+ Inhalts-verzeichnis
+ Leerseite
Caput 2
Ein Chapter
2.1 Mit Section
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam lobortisfacilisis sem. Nullam nec mi et neque pharetra sollicitudin. Praesent im-perdiet mi nec ante. Donec ullamcorper, felis non sodales commodo, lectusvelit ultrices augue, a dignissim nibh lectus placerat pede. Vivamus nuncnunc, molestie ut, ultricies vel, semper in, velit. Ut porttitor. Praesent insapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis frin-gilla tristique neque. Sed interdum libero ut metus. Pellentesque placerat.Nam rutrum augue a leo. Morbi sed elit sit amet ante lobortis sollicitudin.Praesent blandit blandit mauris. Praesent lectus tellus, aliquet aliquam,luctus a, egestas a, turpis. Mauris lacinia lorem sit amet ipsum. Nunc quisurna dictum turpis accumsan semper.
x =1
n
i=n∑
i=1
xi =x1 + x2 + . . . + xn
n
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam lobortisfacilisis sem. Nullam nec mi et neque pharetra sollicitudin. Praesent im-perdiet mi nec ante. Donec ullamcorper, felis non sodales commodo, lectusvelit ultrices augue, a dignissim nibh lectus placerat pede. Vivamus nuncnunc, molestie ut, ultricies vel, semper in, velit. Ut porttitor. Praesent insapien. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis frin-gilla tristique neque. Sed interdum libero ut metus. Pellentesque placerat.Nam rutrum augue a leo. Morbi sed elit sit amet ante lobortis sollicitudin.Praesent blandit blandit mauris. Praesent lectus tellus, aliquet aliquam,luctus a, egestas a, turpis. Mauris lacinia lorem sit amet ipsum. Nunc quisurna dictum turpis accumsan semper.
∫ ∞
0e−αx
2dx =
1
2
√∫ ∞
−∞e−αx2dx
∫ ∞
−∞e−αy
2dy =
1
2
√π
α
3
5 / 39
![Page 7: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/7.jpg)
Typische Dokument-Bausteine
I Titelseite \maketitle oder \begintitlepage
I Abstract? Keywords? \beginabstract
I Inhaltsverzeichnis? \tableofcontents
Inhalt
I Bibliographie BibTEX
I Index von Bildern, Tabellen, Algorithmen, Stichwortern?Paket makeidx, \listoffigures, \listoftables
6 / 39
![Page 8: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/8.jpg)
Inhalt?
1. EinleitungWas? Warum? Wer hat schon ahnliches gemacht?
2. Methoden, GrundlagenWas braucht man dazu? Wie macht man das?
3. ErgebnisseWas ist passiert?
4. DiskussionWas bedeutet das?
7 / 39
![Page 9: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/9.jpg)
Dateien aufteilen – nur Hauptdokument kompilieren
main.tex
\documentclassreport
\usepackage ...
\newcommand ...
\begindocument
\titleTheorie von ...
\authorMary Sue
\maketitle
\tableofcontents
\inputeinfuehrung
\inputtheorie
\inputergebnisse
\enddocument
einfuehrung.tex
\chapterEinf u hrung
Wir beschreiben ...
theorie.tex
\chapterTheorie
Die theoretischen
Grundlagen ...
ergebnisse.tex
\chapterErgebnisse
Unsere Experimente ...
8 / 39
![Page 10: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/10.jpg)
Eigene Titelseite – nutzliche ZutatenManuelle Abstande
\vspace *5cm % vertikal
\hspace *2mm % horizontal
Automatische Abstande (proportional auffullen)
oben
\vfill
links \hfill rechts
\vfill
unten
Linien
\rule5cm1mm % 5cm lang und 1mm dick
Autor, Titel, Datum auslesen
\usepackagetitling
\theauthor , \thetitle , \thedate9 / 39
![Page 11: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/11.jpg)
Referenzieren
10 / 39
![Page 12: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/12.jpg)
Bilder
Figure 1: A diagram describing the complex interrela-tions between number theory and social engineering.
As Figure 1 on page 1 illustrates, Lorem ipsum do-lor sit amet, consectetuer adipiscing elit. Ut puruselit, vestibulum ut, placerat ac, adipiscing vitae, felis.Curabitur dictum gravida mauris. Nam arcu libero,nonummy eget, consectetuer id, vulputate a, magna.Donec vehicula augue eu neque. Pellentesque habitantmorbi tristique senectus et netus et malesuada famesac turpis egestas. Mauris ut leo. Cras viverra metusrhoncus sem. Nulla et lectus vestibulum urna fringillaultrices. Phasellus eu tellus sit amet tortor gravidaplacerat. Integer sapien est, iaculis in, pretium quis,viverra ac, nunc. Praesent eget sem vel leo ultricesbibendum. Aenean faucibus. Morbi dolor nulla, male-suada eu, pulvinar at, mollis ac, nulla. Curabitur auc-tor semper nulla. Donec varius orci eget risus. Duisnibh mi, congue eu, accumsan eleifend, sagittis quis,diam. Duis eget orci sit amet orci dignissim rutrum.
1
http://xkcd.com/538/ 11 / 39
![Page 13: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/13.jpg)
Bilder
(a)Left half (b)Right half
Figure 2: A diagram with subfigures.
As Figure 2 on page 2 illustrates with the help of2a and 2b, Lorem ipsum dolor sit amet, consectetueradipiscing elit. Ut purus elit, vestibulum ut, placeratac, adipiscing vitae, felis. Curabitur dictum gravidamauris. Nam arcu libero, nonummy eget, consectetuerid, vulputate a, magna. Donec vehicula augue euneque. Pellentesque habitant morbi tristique senectuset netus et malesuada fames ac turpis egestas. Mau-ris ut leo. Cras viverra metus rhoncus sem. Nullaet lectus vestibulum urna fringilla ultrices. Phasel-lus eu tellus sit amet tortor gravida placerat. Integersapien est, iaculis in, pretium quis, viverra ac, nunc.Praesent eget sem vel leo ultrices bibendum. Aeneanfaucibus. Morbi dolor nulla, malesuada eu, pulvinarat, mollis ac, nulla. Curabitur auctor semper nulla.Donec varius orci eget risus. Duis nibh mi, congueeu, accumsan eleifend, sagittis quis, diam. Duis egetorci sit amet orci dignissim rutrum.
2
http://xkcd.com/538/ 12 / 39
![Page 14: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/14.jpg)
Bilder
Datei einbinden – file.png/.jpg/.pdf
\usepackagegraphicx
\includegraphics [...] file
Parameter
I width, scale – Bild skalieren
I trim, clip, page – Bildteile ausschneiden
Positionierung?
13 / 39
![Page 15: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/15.jpg)
Float-Umgebungen & Referenzen I
I Bilder
As \figurename~\reffig:crypto
on page~\pagereffig:crypto illustrates ,
\beginfigure
\centering
\includegraphicsxkcd
\captionA diagram describing ...
\labelfig:crypto
\endfigure
Floats floaten!
Das ist erwunscht!
Beschriftung & Referenz sind Pflicht!
14 / 39
![Page 16: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/16.jpg)
Float-Umgebungen & Referenzen II
I Tabellen
\begintable
\caption ...\ label ...
\begintabular lr
...
\endtabular
\endtable
I Algorithmen, Code
\beginalgorithm
... kommt gleich
\endalgorithm
15 / 39
![Page 17: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/17.jpg)
Noch mehr Nummerierung mit Referenzen
Kapitel und Abschnitte
\chapterTheorie \labelchap:theorie
\sectionErgebnisse \labelsec:ergebnisse
Formeln
\beginequation
a^2 + b^2 = c^2 \labeleq:dreieck
\endequation
In Gleichung~\eqrefeq:dreieck ...
Aufzahlungspunkte
\beginenumerate
\item \labelsumme Summiere alle Werte $x_i$
\endenumerate
16 / 39
![Page 18: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/18.jpg)
Literatur zitieren
Donald E. Knuth showed [2] that the implementationof fundamental algorithms. . .
Examples are provided by Graham et al. [1, p. 13–15].
References
[1] Ronald L. Graham, Donald E. Knuth, and OrenPatashnik. Concrete mathematics – a foundationfor computer science. Addison-Wesley, 1989.
[2] Donald E. Knuth. The Art of Computer Pro-gramming, Volume I: Fundamental Algorithms.Addison-Wesley, 1968.
1
17 / 39
![Page 19: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/19.jpg)
Literatur zitieren – BibTEX
dokument.tex
Donald E.~Knuth showed~\citeartof ...
...by Graham et~al.~\cite[p.~13--15] concr.
\bibliographystyleplain
\bibliographyliteratur
literatur.bib
@bookartof ,
author = Donald E. Knuth,
title = The Art of Computer
Programming , Volume I:
Fundamental Algorithms,
publisher = Addison -Wesley,
year = 1968 ,
18 / 39
![Page 20: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/20.jpg)
Literatur zitieren – BibTEX
I Mehrfach kompilieren notwendigpdflatex dokument.tex
bibtex dokument
pdflatex dokument.tex
pdflatex dokument.tex
I BibTEX-Eintrage am einfachsten aus Datenbanken(Universitats-Bibliotheken, Google Scholar, DBLP, . . . )
I Verschiedene Zitier-Stile in Gebrauch(Nummern, Autor und Jahr, . . . )
I Nachfolger: BibLATEXI Flexibler, internationaler, einfacherI (Noch) nicht uberall gut integriert (Verlage, IDEs, . . . )
19 / 39
![Page 21: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/21.jpg)
Hyperlinks und URLs
Klickbare ref und cite im PDF
\usepackagehyperref
URLs
\urlwww.tugraz.at
\hrefwww.tugraz.atTU Graz
20 / 39
![Page 22: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/22.jpg)
Algorithmen
21 / 39
![Page 23: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/23.jpg)
Source Code
Die Funktion nimmt einen unsigned int als Param-eter. Der Returnwert ist ebenfalls ein unsigned int.
unsigned f a c t o r i a l (unsigned n ) ;
Die vollstandige Implementierung ist in code.c.
#include<s t d i o . h>unsigned f a c t o r i a l (unsigned n)
int r e s u l t = 1 , i ;for ( i = 1 ; i <= n ; i++)
r e s u l t ∗= i ;return r e s u l t ;
int main ( int argc , char ∗∗ argv )
p r i n t f ( ”%d ! = %d\n” ,9 , f a c t o r i a l ( 9 ) ) ;return 0 ;
Man kann auch verbatim verwenden:
#include<stdio.h>
unsigned factorial(unsigned n)
int result = 1, i;
for (i = 1; i <= n; i++)
result *= i;
return result;
1
22 / 39
![Page 24: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/24.jpg)
Source Code
I Wenn der Code im Vordergrund steht (z.B. Dokumentation)Nicht, um Algorithmus zu erklaren
I Umgebung verbatim
\beginverbatim ... \endverbatim
oder inline \verb |...|
I Paket listings
\usepackagelistings
\lstsetkeywordstyle =\bfseries ,language=C
\beginlstlisting ... \endlstlisting
oder inline \lstinline !...!
oder aus Datei
\lstinputlistingmain.c
23 / 39
![Page 25: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/25.jpg)
Pseudocode
Algorithmus 1 Berechnung der Fakultat n!
Eingabe: eine Zahl n ∈ NAusgabe: N = n!, die Fakultat von n1: initialisiere N := 12: for i = 1, . . . , n do3: setze N := N · i4: gib Ergebnis N aus
Algorithmus 1 beschreibt die iterative Berechnung derFakultat einer Zahl. Das geht auch mit mehr Worten:
1. Multipliziere alle Zahlen von 1 bis n zusammen.
2. Das Ergebnis ist die gesuchte Zahl N = n!.
1
24 / 39
![Page 26: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/26.jpg)
Pseudocode
I Wenn der Algorithmus im Vordergrund steht, zum Erklaren
I Umgebung enumerate
I Paket algorithmic und Konsorten
\usepackagealgorithm , algorithmic
...
\beginalgorithm
\caption ... \label ...
\beginalgorithmic
\STATE initialisiere $N := 1$
\FOR $i = 1, \ldots , n$
\STATE setze $N := N \cdot i$
\ENDFOR
\endalgorithmic
\endalgorithm
25 / 39
![Page 27: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/27.jpg)
Grafiken
26 / 39
![Page 28: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/28.jpg)
M1 M2 M`
C1 C2 C`
IV · · ·
EK EK EK A B
A ∩B
n
n2
n2+
n4
n4
n4
n4+ + +
......
......
......
......
n2k
n2k+ + · · · + n
2kn2k +
![Page 29: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/29.jpg)
Warum wurde man das in LATEX machen wollen?Gibt es nicht genug externe Tools?
Vorteil von”normalen“ Tools mit includegraphics
(Programme fur Vektorgrafiken, UML-Diagramme, Statistik, . . . )
I leichter zu bedienen
I weniger Aufwand, wenn man das Tool kennt
I spezialisiert auf das jeweilige Gebiet
I oft weit verbreitet, Konsistenz mit anderen
Vorteil von LATEX-Losungen
(TikZ, Asymptote, pstricks, . . . )
I skalierbar (immer Vektorgrafik), nicht pixelig, lesbar (!)
I Einheitlichkeit innerhalb des Dokuments
I muss kein neues Tool fur jede neue Aufgabe starten/lernen
I Code relativ leicht durch andere Sprache erzeugbar
28 / 39
![Page 30: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/30.jpg)
TikZ
TikZ ist kein Zeichenprogramm
I . . . oder doch?
I LATEX-Paket zum Erstellen von Grafikennaturlich eine Programmiersprache, kein GUI :)
I Beispiele: http://texample.net/tikz/examples/
TikZ verwenden
\usepackagetikz
...
\begintikzpicture
...
\endtikzpicture
oder \tikz ... als inline -Befehl
29 / 39
![Page 31: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/31.jpg)
Basics
in tikzpicture:
\draw (0,0) -- (2,0) -- (2,2) -- (0,2) -- (0,0)
-- (2,2) -- (1,3) -- (0,2) -- (2,0);
\draw[color=brown , line width =5pt]
(3.5 ,0) rectangle (4 ,1.5);
\draw[fill=green !70! yellow]
(3.75 ,2.5) circle (1);
30 / 39
![Page 32: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/32.jpg)
Punkte
Koordinatensysteme
I Euklidisch: (x,y) mit x- und y-Koordinate [cm]
I Polarkoordinaten: (ϕ:r) mit Winkel ϕ [Grad], Radius r [cm]
I relativ: +(x,y), ++(x,y) mit Abstand zum letzten Punkt
I 3D: (x,y,z)
”Pinselspitze“ bewegt sich weiter
\draw (0,0)
-- (30:1)
rectangle ++(1 , -1.5)
circle (.5)
arc (135:45:1);
•
31 / 39
![Page 33: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/33.jpg)
Beschriftung
Nodes
\draw (0,0) node Asdf;
\draw[->] (0,0) node A
-- (1,0) node B;
\draw[->] (0,0) node[left] A
-- (1,0) node[right] B;
\node (a) at (0,0) A;
\node (b) at (1,0) B;
\draw[->] (a) -- (b);
Asdf
A B
A B
A B
32 / 39
![Page 34: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/34.jpg)
Kurven
Eingangs-Winkel
\draw[out=90, in=-90] (6,0) to (7 ,2);
Krummung der Linie
\draw[bend left =30] (3,0) to (4 ,2);
”Magnetische“ Kontrollpunkte (Bezier splines)
\draw (0,0) .. controls (0,1)
and (1,1)
.. (2,0);
• •
33 / 39
![Page 35: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/35.jpg)
Beispiel: Funktionsgraphen
x
f(x)
f1(x) = x
f3(x) = sinx
f2(x) =120e
x
π2
π
...
\draw[domain =0:4] plot (\x, 1/20* exp(\x));
...
34 / 39
![Page 36: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/36.jpg)
Beispiel: Daten plotten
20 30 40 50 60 70
0
0.5
1
1.5
·105
Score achieved
Nu
mb
erof
gam
esno heuristicMCTS-UCTMonte Carlo
Random Walk
I Paket pgfplots mit axis-Umgebung und \addplot
35 / 39
![Page 37: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/37.jpg)
Beispiel: Statistik
Abbildung: Wachstumsrate des realen BIP fur die zehnbevolkerungsreichsten Staaten der EU 2005.
%
1
2
3
44.1
Ruman
ien
3.7
Griech
enla
nd
3.5
Spanien
3.5
Polen
1.9
Großb
ritan
nien
1.5
Nieder
lande
1.2
Frankr
eich
0.9
Deu
tsch
land
0.5
Portu
gal
0.1
Italie
n
I \foreach-Schleifen fur Balken
36 / 39
![Page 38: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/38.jpg)
foreach-Schleifen
Uberall in LATEX
\usepackagepgffor
...
\foreach \x in 99 ,98 ,... ,0
\x bottles of beer \\
99bottles of beer98bottles of beer97bottles of beer96bottles of beer. . .
In TikZ
\foreach \r/\col in 2/red ,
3/green ,
4/blue
\fill[\col] (0,-\r*\r) circle (\r);
\draw (0,0) foreach \r in 1,...,7
++(1 ,0) circle (\r) ;37 / 39
![Page 39: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/39.jpg)
(Kein gutes) Beispiel: Statistik
Beispiel aus Die Zeit (2005), via TikZ-Manual v3 S. 95:
• The three dimensional setup makes it much harder to gauge the height of the bars correctly. Considerthe “bad” bar. It the number this bar stands for more than 20 or less? While the front of the bar isbelow the 20 line, the back of the bar (which counts) is above.
• It is impossible to tell which numbers are represented by the bars. Thus, the bars needlessly hide theinformation these bars are all about.
• What do the bar heights add up to? Is it 100% or 60%?
• Does the bar for “very bad” represent 0 or 1?
• Why are the bars blue?
You might argue that in the example the exact numbers are not important for the graphic. The importantthings is the “message,” which is that there are more “very good” and “good” ratings than “bad” and “verybad.” However, to convey this message either use a sentence that says so or use a graphic that conveys thismessage more clearly:
Ratings given by50 participants
“ok”: 10 (20%)
none: 20 (40%)
“very good”: 3 (6%)
“good”: 9 (18%) “bad”: 8 (16%)
“very bad”: 0 (0%)
The above graphic has about the same information density as the table (about the same size and thesame numbers are shown). In addition, one can directly “see” that there are more good or very good ratingsthan bad ones. One can also “see” that the number of people who gave no rating at all is not negligible,which is quite common for feedback forms.
Charts are not always a good idea. Let us look at an example that I redrew from a pie chart in Die Zeit,June 4th, 2005:
Kohle ist am wichtigstenEnergiemix bei der deutschen Stromerzeugung 2004
Gesamte Netto-Stromerzeugung in Prozent, in Milliarden Kilowattstunden (Mrd. kWh)
9,4%
27,8%
25,6%22,3%
10,4%
Regenerative (53,7 kWh)/davon Wind 4,4% (25,0 kWh)
Kernenergie
(158,4 kWh)
Braunkohle (146,0 kWh)Steinkohle (127,1 kWh)
Erdgas (59,2 kWh)
Mineralolprodukte (9,2 kWh) 1,6%
Sonstige (16,5 kWh) 2,9%
This graphic has been redrawn in TikZ, but the original looks almost exactly the same.At first sight, the graphic looks “nice and informative,” but there are a lot of things that went wrong:
• The chart is three dimensional. However, the shadings add nothing “information-wise,” at best, theydistract.
95
Kommentare?
38 / 39
![Page 40: Maria Eichlseder 21. Oktober 2015 · 2015-10-21 · I Code und Pseudocode einsetzen k onnen I Gra ken I Diagramme sinnvoll einsetzen I Umsetzung in TikZ (o. a.) ... I letter2, scrlttr2,](https://reader031.vdocuments.site/reader031/viewer/2022041117/5f2bbe5057b0f928946d8eed/html5/thumbnails/40.jpg)
Bessere Beispiele
http://www.texample.net/tikz/examples/
39 / 39