7 Grafiken
- Wie fügt man ein Bild ein?
- Wie wandelt man eps-Dateien um?
- Wie erstelle ich Schaubilder?
- Wie erstelle ich Graphen?
7.1 Wie fügt man ein Bild ein?
Um in LATEXBilder einzufügen nutze ich das Paket graphicx1 von David Carlisle. Dies ermöglicht es Bilder nicht nur im eps-Format einzufügen. Dies lässt dann die Ausgabedatei auch nicht ganz so großwerden. Die Syntax des Befehls lautet:
\includegraphics[width=0.5\linewidth,angle=90,page=1]{meinepdfdatei}
7.2 Wie wandelt man eps-Dateien um?
Wenn ich doch nochmal eine eps- oder ps-Datei haben sollte, so öffne ich entweder die Datei mit gimp2 und konvertiere sie, oder ich nutze auf der Kommandozeile den Befehl
convert -trim datei.eps datei.png
Dies kann man auch wieder mit einem make-Automatismus vereinfachen.
7.3 Wie erstelle ich Schaubilder?
Das kommt immer darauf an, ob es eine einfache Zeichnung oder etwas komplizierteres ist. Früher habe ich alle Grafiken mit dem freien Programm xfig3 unter Linux erstellt, aber mittlerweile bin ich zu Pstricks4 umgestiegen, was ein sehr mächtiges Werkzeug ist.5
-
Ganz einfachen Zeichnungen hatte ich bisher unter Linux mit
xfig erstellt. Unter xfig exportiere ich die Bilder als
combined pdf/latex
. Die Dateien, die dabei herauskommen speicher ich in im Xfig-Verzeichnis. Das Bild füge ich mit\scalebox{0.5}{\input{Unterverzeichnis/Xfig/xfigdatei.tex}}}
in die LaTeX-Datei ein. - Oder ich erstelle in dem Pstricks-Verzeichnis eine pstricks-Datei, die
ich gesondert kompiliere und dann die pdf-Datei in mein Dokument einfüge mit
\includegraphics[scale=1]{Unterverzeichnis/Pstricks/pstricksdatei}
- Bilder und Fotos bearbeite ich hauptsächlich mit dem sehr mächtigemn Programm gimp.
- Geometrische Zeichnungen erstelle ich mit Geogebra. Seit einiger Zeit kann man nicht nur die Datei als png-Datei exportieren, sondern auch als pstricks-Datei abzuspeichern, was einfach toll ist!!
7.4 Wie erstelle ich Graphen?
In letzter Zeit ist mein Steckenpferd Pstricks, sodass ich meine Graphen auch hier drunter zeichne. Es gibt aber auch hier natürlich mehrere Möglichkeiten:
-
In einer Tabellenkalkulation den Graphen erstellen und die Datei in eine
pdf-Datei drucken. Diese pdf-Datei dann als Bild in das LATEX-Dokument
einfügen. Dabei ich keine Ränder dabei habe, bearbeite ich die pdf-Datei
noch mit
pdfcrop
von Heiko Oberdieck. - Eine Gnuplot-Grafik erstellen und in LATEX einfügen.
- Eine Maple-Datei erstellen und in LATEX einbinden.
- Mit Geogebra eine Datei erstellen und als png-Datei speichern.
- Eine Pstricks-Datei mit einem Graphen erzeugen und einfügen
- Mit meinem Funktionsplotterskript einen xfig-Graphen erstellen und diesen in die LATEX-Datei einfügen.
Ich schwankte einige Zeit zwischen dem letzten und vorletzten Punkt. Meine Entscheidung ist dann aber auf Pstricks gefallen, sodass ich mir auch hierfür ein Plotterskript gebaut habe. Ich stelle hier aber mal zwei verschiedene Graphen mit Pstricks und xfig erstellt vor:
Pstricks:
Pstricks ist ein sehr mächtiges LATEX-Paket, Für das man auch so seine Zeit zum einarbeiten benötigt. Ich empfehle das Buch Pstricks von Herbert Voßdazu.6 Ansonsten gibt es unter [pst, 2009b] eine Menge Beispiele und Dokumentation. Hier kommt nun ein kleines Beispiel aus der Analysis:
flaeche5-tex.tex |
---|
1 %% Autor: X. Rendtel 2 %% Letzte Aenderung: 03.10.2009 3 4 \documentclass[10pt, a4paper]{article} 5 \usepackage[utf8]{inputenc} 6 \usepackage{pstricks,pst-pdf,pst-node,xcolor,pst-circ,pst-func,pst-math,pst-eucl,pstricks-add} 7 \usepackage{amsmath,amssymb,amscd,ziffer} 8 \makeatletter\newcommand{\psxpoint}[3][black]{% 9 \psline[linewidth=.5pt,linecolor=#1]{-}(#2,\pst@xticksizeB)(#2,\pst@xticksizeA) 10 \rput[t](! #2 \pst@number\pslabelsep \pst@number\pst@xticksizeB add 11 \pst@number\psyunit div neg ){\color{#1}#3}} \makeatother 12 \makeatletter\newcommand{\psypoint}[3][black]{% 13 \psline[linewidth=.5pt,linecolor=#1]{-}(\pst@yticksizeB,#2)(\pst@yticksizeA,#2) 14 \rput[r](! \pst@number\pslabelsep \pst@number\pst@yticksizeA sub 15 \pst@number\psxunit div neg #2){\color{#1}#3}} 16 \makeatother 17 \pagestyle{empty} 18 19 \begin{document} 20 \psset{linecolor=black, fillcolor=black!20, linewidth=1pt, 21 dotstyle=*, plotpoints=1000, dotsize=3pt, arrowsize=3pt 2, 22 arrowinset=0.25, xunit=1cm, yunit=1cm} 23 24 \begin{pspicture}(-10,-10)(10,10) 25 26 %% Einschluss zwischen den Funktionen ((0.5*x^2)+1) und (-(x^2))+((3/2)*x)+4 27 \pscustom[fillcolor=red!40]{\gsave% 28 \psplot[linestyle=solid, linewidth=0.2pt]{-1}{2}{0.5 x dup mul mul 1 add }% 29 \psplot[linestyle=solid, linewidth=0.2pt]{2}{-1}{x dup mul neg 3 2 div x mul add 4 add }% 30 \fill[fillstyle=solid, fillcolor=red!40]\grestore}% 31 32 \uput{0}[180]{0}(4,-0.7){$x$}% 33 \uput{0}[0]{0}(0.2,4.8){$y$}% 34 \psaxes[linestyle=solid, linewidth=0.8pt, showorigin=false,comma, 35 subticks=0, Dx=1, Dy=1, dx=0pt, dy=0pt, Ox=0, Oy=0]{->}(0,0)(-3,-1)(4,5)% 36 37 \rput[bl](2.6,1.5){$g(x) = -x^2+\frac{3x}{2}+4$} 38 \rput[bl](2.8,3.3){$f(x) = \frac{1}{2}x^2+1$} 39 40 \psplot[linestyle=solid, algebraic]{-2.8248}{2.8228}{0.5*x^2+1}% 41 \psplot[linestyle=solid, algebraic]{-1.6056}{3.1031}{-x^2+(3/2)*x+4}% 42 \psline[linestyle=dashed](2,3)(2,0)% 43 \psxpoint{2}{} 44 \psline[linestyle=dashed](2,3)(0,3)% 45 \psypoint[black]{3}{} 46 \psdot[linestyle=dashed, dotstyle=x, dotsize=1pt](2,3)% 47 48 \end{pspicture} 49 \end{document} |
xfig:
Vor einiger Zeit habe ich mir einmal als Ferienprojekt ein Plotterskript für xfig erstellt. Momentan ist die Entwicklung daran eingeschlafen, aber ich nutze das Skript noch ab und an. In Abbildung 7.4 ist die Beispielgrafik enthalten.
Der Quellcode für mein xfig-Skript:
eisberg2-tex.tex |
---|
1 skalierung x=0.01 y=0.15 2 kariert layer=50 abstandx=100,0,0 abstandy=5,0,0 bereich=0,-15,1000,40 3 xachse layer=10 bereich=0,1000,100 skala=normal text="$x$ in d" 4 yachse layer=10 bereich=-15,40,5 skala=normal text="$V$ in $\\m^3 \\* 10^{6}$" 5 plot layer=50 farbe=1 linienart=0 liniendicke=2 bereich=0,1000 grenze=-15,40 6 -0.000001*x^3+0.00132*x^2-0.464*x+38.4 |
plotter.pl datei.ptxt
in eine datei.fig verwandelt. Mit dem Aufruf
fig2dev -L pdftex -p datei.pdf datei.fig datei.pdf fig2dev -L pdftex_t -p datei.pdf datei.fig datei.tex
wird dann die Datei in eine tex-Datei verwandelt, die in das Dokument mit eingefügt wird. Um in der Beschriftung ganz normale mathematische Formeln nutzen zu können, muss ein Flag in der .Xdefaults eingestellt sein:
Fig.latexfonts: true Fig.specialtext: true
- 1
- Siehe [gra, 2009]
- 2
- Siehe [gim, 2009]
- 3
- Siehe [xfi, 2009]
- 4
- Siehe [pst, 2009b]
- 5
- Siehe dazu [Voß, 2008a]
- 6
- Siehe [Voß, 2008a]