Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] %...

47
Diagramme erstellen mit pgfplots Stefan Pinnow Dante Herbsttagung 2010 Institut für Chemische Verfahrenstechnik TU Clausthal Stefan Pinnow Diagramme erstellen mit pgfplots ICVT 1

Transcript of Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] %...

Page 1: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Diagramme erstellen mit pgfplots

Stefan Pinnow

Dante Herbsttagung 2010

Institut für Chemische VerfahrenstechnikTU Clausthal

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 1

Page 2: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Motivation / ZielMotivation– . . . alles aus einem Guss– aber warum dann GNUplot-Diagramme einbinden?

Ziel– Diagramme für einen Artikel→ schwarz/weiß-Diagramme

– nicht jeden Befehl merken

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 2

Page 3: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Motivation / ZielMotivation– . . . alles aus einem Guss– aber warum dann GNUplot-Diagramme einbinden?

Ziel– Diagramme für einen Artikel→ schwarz/weiß-Diagramme

– nicht jeden Befehl merken

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 2

Page 4: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Motivation / ZielMotivation– . . . alles aus einem Guss– aber warum dann GNUplot-Diagramme einbinden?

Ziel– Diagramme für einen Artikel→ schwarz/weiß-Diagramme

– nicht jeden Befehl merken

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 2

Page 5: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Grundlagen

Paket laden

1 \input pgfplots.tex % Plain TeX\usepackage{pgfplots} % LaTeX\usemodule[pgfplots] % ConTeXt

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 3

Page 6: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Grundlagen

Paket laden

1 \input pgfplots.tex % Plain TeX\usepackage{pgfplots} % LaTeX\usemodule[pgfplots] % ConTeXt

Standardachse1 \begin{tikzpicture}

\begin{axis}% Plot code

\end{axis}5 \end{tikzpicture}

0 0.5 10

0.5

1

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 3

Page 7: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Grundlagen

Paket laden

1 \input pgfplots.tex % Plain TeX\usepackage{pgfplots} % LaTeX\usemodule[pgfplots] % ConTeXt

logarithmische x -Achse1 \begin{tikzpicture}

\begin{semilogxaxis}% Plot code

\end{semilogxaxis}5 \end{tikzpicture}

100 100.2 100.4

0

0.5

1

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 3

Page 8: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Grundlagen

Paket laden

1 \input pgfplots.tex % Plain TeX\usepackage{pgfplots} % LaTeX\usemodule[pgfplots] % ConTeXt

logarithmische Achsen1 \begin{tikzpicture}

\begin{loglogaxis}% Plot code

\end{loglogaxis}5 \end{tikzpicture}

100 100.2 100.4

100

100.2

100.4

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 3

Page 9: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Grundlagen

Paket laden

1 \input pgfplots.tex % Plain TeX\usepackage{pgfplots} % LaTeX\usemodule[pgfplots] % ConTeXt

logarithmische Achsen1 \begin{tikzpicture}

\begin{loglogaxis}% Plot code

\end{loglogaxis}5 \end{tikzpicture}

100 100.2 100.4

100

100.2

100.4

„neue“ Verbesserungennutzen

1 \pgfplotsset{compat = newest}

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 3

Page 10: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

Concentration Rate/mmol dm−3 / s−1

338.1 266.45169.1 143.4384.5 64.8042.3 34.1921.1 9.47

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 11: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

Concentration Rate/mmol dm−3 / s−1

338.1 266.45169.1 143.4384.5 64.8042.3 34.1921.1 9.47

1 \addplot coordinates {( 338.1, 266.45 )( 169.1, 143.43 )( 84.5, 64.80 )

5 ( 42.3, 34.19 )( 21.1, 9.47 )

};

0 100 200 3000

100

200

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 12: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

Concentration Rate/mmol dm−3 / s−1

338.1 266.45169.1 143.4384.5 64.8042.3 34.1921.1 9.47

1 \addplot coordinates {( 338.1, 266.45 )( 169.1, 143.43 )( 84.5, 64.80 )

5 ( 42.3, 34.19 )( 21.1, 9.47 )

};

0 100 200 3000

100

200

keine Farbekeine Linien

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 13: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

1 \addplot[color = black,fill = black,mark = *,

5 only marks] coordinates {

( 338.1, 266.45 )( 169.1, 143.43 )( 84.5, 64.80 )

10 ( 42.3, 34.19 )( 21.1, 9.47 )

};

0 100 200 3000

100

200

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 14: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

1 \addplot[color = black,fill = black,mark = *,

5 only marks] coordinates {

( 338.1, 266.45 )( 169.1, 143.43 )( 84.5, 64.80 )

10 ( 42.3, 34.19 )( 21.1, 9.47 )

};

0 100 200 3000

100

200

Trendlinie hinzufügen

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 15: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

1 \addplot[color = black,fill = black,mark = *,

5 only marks] coordinates { ... };

\addplot[color = black,

10 mark = none]

coordinates {( 0, 0 )( 350, 279 )

15 };

0 100 200 3000

100

200

300

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 16: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

1 \addplot[color = black,fill = black,mark = *,

5 only marks] coordinates { ... };

\addplot[color = black,

10 mark = none]

coordinates {( 0, 0 )( 350, 279 )

15 };

0 100 200 3000

100

200

300

Achsen beschriftenAchsenlimits anpassen

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 17: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Kleiner Datensatz

1 \begin{axis}[xlabel =

Concentration\,/\,%mmol\,dm$^{-3}$,

5 xmax = 400,xmin = 0,ylabel = Rate\,/\,s$^{-1}$,ymax = 300,ymin = 0

10 ]...

0 100 200 300 4000

100

200

300

Concentration /mmol dm−3

Rate/s

−1

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 4

Page 18: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Datenfile „data-set-two.txt“

1 Time a b c d0 49 7 41 1.367 55 9 33 1.6134 61 10 26 1.9

5 200 65 12 20 1.9...

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 19: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Datenfile „data-set-two.txt“

1 Time a b c d0 49 7 41 1.367 55 9 33 1.6134 61 10 26 1.9

5 200 65 12 20 1.9...

Einlesen des Datenfiles

1 \pgfplotstableread{data-set-two.txt}\datatable

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 20: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Erzeugen des Plots

1 \pgfplotstableread{data-set-two.txt}\datatable

\addplot table[y = a] from \datatable ;5 \addplot table[y = b] from \datatable ;

\addplot table[y = c] from \datatable ;\addplot table[y = d] from \datatable ;

0 500 1,0000

20

40

60

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 21: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Alternative

1 \pgfplotstableread{data-set-two.txt}\datatable

5

\addplot table[y = a] from \datatable ;\addplot table[y = b] {data-set-two.txt} ;

10 \addplot table[y index = 3] {data-set-two.txt} ;\addplot table[y index = 4] from \datatable ;

0 500 1,0000

20

40

60

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 22: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Hinzufügen einer Legende

1 \addplot table[y = a] from \datatable ;\addplot table[y = b] from \datatable ;\addplot table[y = c] from \datatable ;\addplot table[y = d] from \datatable ;

5

\legend{%Component \textbf{a},Component \textbf{b},Component \textbf{c},

10 Component \textbf{d},}

0 500 1,0000

20

40

60Component aComponent bComponent cComponent d

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 23: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Alternative

1 \begin{axis}[legend entries = {%

Component \textbf{a},Component \textbf{b},

5 Component \textbf{c},Component \textbf{d},

},]

10 \addplot table[y = a] from \datatable ;\addplot table[y = b] from \datatable ;\addplot table[y = c] from \datatable ;\addplot table[y = d] from \datatable ;

0 500 1,0000

20

40

60Component aComponent bComponent cComponent d

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 24: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Noch eine Alternative

1 \addplot table[y = a] from \datatable ;\addlegendentry{%

Component \textbf{a}};\addplot table[y = b] from \datatable ;

5 \addlegendentry{%Component \textbf{b}};

...0 500 1,000

0

20

40

60Component aComponent bComponent cComponent d

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 25: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Schönheitskorrekturen– Achsenbeschriftungen hinzufügen– Linien entfernen– 1000er Trenner entfernen

1 \pgfkeys{/pgf/number format/

set thousands separator =}

0 200 400 600 800 10000

20

40

60

80

Time / s

Relativ

eam

ount

/% Component aComponent bComponent cComponent d

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 5

Page 26: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatz

Eigene Marker definieren

1 \pgfdeclareplotmark{halfcircle}{%\begin{pgfscope}

\pgfsetfillcolor{white}%\pgfpathcircle{\pgfpoint{0pt}{0pt}}

5 {\pgfplotmarksize}\pgfusepathqfillstroke

\end{pgfscope}%\pgfpathmoveto

{\pgfpoint{\pgfplotmarksize}{0pt}}10 \pgfpatharc{0}{180}{\pgfplotmarksize}

\pgfpathclose\pgfusepathqfill

}

Ergebnis (200%)

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 6

Page 27: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Großer Datensatzneuen Marker verwenden

1 \addplot[mark = halfcircle, ...

. . . mit Optionen

1 \addplot[mark = halfcircle,mark options = {rotate = 90},

Legende verschieben

1 [legend style = { at = {(0.6,0.75)}}

]

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 7

Page 28: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

0 200 400 600 800 10000

10

20

30

40

50

60

70

80

Time / s

Relativ

eam

ount

/% Component aComponent bComponent cComponent d

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 8

Page 29: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Ein experimentelles Spektrum

was wir schon kennen

1 [xlabel = Chemische

Verschiebung\,/\,ppm,xmin = 18,

5 xmax = 24,ymax = 1.25,ymin = 0

] \addplot[color = black,

10 mark = none] table {plots/data/data-set-three.txt};

18 20 22 240

0.5

1

Chemische Verschiebung / ppm

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 9

Page 30: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Ein experimentelles Spektrum

y -Achsenbeschriftungentfernen

1 [yticklabels = ]

18 20 22 24Chemical shift / ppm

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 10

Page 31: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Ein experimentelles Spektrum

y -Achsenbeschriftungentfernen

1 [yticklabels = ]

x -Achse umdrehen

1 \addplot[x dir = reverse,...

18202224Chemical shift / ppm

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 10

Page 32: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Ein experimentelles Spektrum

Peaks beschriften

1 \node[coordinate,pin = {[rotate=90]right:22.26}

] at (axis cs:22.26,1.1) { };

22.26

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 11

Page 33: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Ein experimentelles Spektrum

Peaks beschriften

1 \node[coordinate,pin = {[rotate=90]right:22.26}

] at (axis cs:22.26,1.1) { };

gedrehte Beschriftung

1 \node[coordinate,pin = {[rotate=90]5:22.32}

] at (axis cs:22.32,1.1) { };22

.26

22.32

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 11

Page 34: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Ein experimentelles Spektrum

1 [x dir = reverse,xlabel

= Chemical shift\,/\,ppm,xmin = 18,

5 xmax = 24,ymax = 1.75,ymin = 0,yticklabels =

] \addplot[10 color = black,

mark = none] table from {plots/data/data-set-three.txt};

\node[15 coordinate,

pin = {[rotate=90]5:22.32}] at (axis cs:22.32,1.1) { }; \node[

coordinate,pin = {[rotate=90]right:22.26}

20 ] at (axis cs:22.26,1.1) { }; ...

18192021222324

22.32

22.26

21.96

21.90

21.26

19.03

18.32

Chemical shift / ppmStefan Pinnow Diagramme erstellen mit pgfplotsICVT 12

Page 35: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Funktionen mit GNUplot

Formel

E (Θ) = K (K Θ)K−1

(K − 1)! exp(−K Θ)

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 13

Page 36: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Funktionen mit GNUplot

Formel

E (Θ) = K (K Θ)K−1

(K − 1)! exp(−K Θ)

1 % number of CSTRs\newcommand\K{3}

\addplot gnuplot[5 id=cascade_model_full,

domain=\xmin:\xmax,samples=101,

]{\K * (\K*x)^(\K-1) / (\K-1)!

10 * exp(-\K * x)};

0 1 2 30

0.2

0.4

0.6

0.8

1

ΘE(Θ

)

-shell-escape nichtvergessen

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 13

Page 37: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Funktionen mit GNUplotcascade_model_full.gnuplot

1 set table "cascade_model_full.table"; set format "%.5f"set format "%.7e";; set samples 101; set dummy x,y; plot [x=0:3] 3* (3*x)**(3-1) / (3-1)! * exp(-3* x);

cascade_model_full.table

1

# Curve 0 of 1, 101 points # Curve title: "3* (3*x)**(3-1) / (3-1)! *exp(-3* x)" # x y type 0.0000000e+000 0.0000000e+000 i 3.0000000e-0021.1104264e-002 i 6.0000000e-002 4.0594132e-002 i ...

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 14

Page 38: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Funktionen mit GNUplot

Anteil des abfließen-den Stromes, der äl-ter als Θ′ ist.

0 0.5 1 1.5 2 2.5 30

0.2

0.4

0.6

0.8

1

Θ′

Θ

E(Θ

)

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 15

Page 39: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Berechnungen mit GNUplot (und Co.)

erstes Beispiel noch einmal (Kleiner Datensatz)

0 100 200 300 4000

100

200

300

Concentration /mmol dm−3

Rate/s

−1

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 16

Page 40: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Berechnungen mit GNUplot (und Co.)

erstes Beispiel noch einmal (Kleiner Datensatz)1 ...

% plot regression curve with GNUplot (calculated also by GNUplot)\addplot [raw gnuplot] gnuplot [id=conc_rate] {

5 % define function which should be fittedf(x)=a*x;

% let gnuplot fit using column 1 and 2 of the data filefit f(x) ’conc_rate.txt’ using 1:2 via a;

% Plot the function with the specified plot range10 plot [x=\xmin:350] f(x); };

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 16

Page 41: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Berechnungen mit GNUplot (und Co.)

erstes Beispiel noch einmal (Kleiner Datensatz)

0 100 200 300 4000

100

200

300

Concentration / mmol dm−3

Rate

/s−

1

measured dataexternal program + pgfplotsexternal program + GNUploteverything GNUploteverything pgfplots

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 16

Page 42: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Berechnungen mit GNUplot (und Co.)

erstes Beispiel noch einmal (Kleiner Datensatz)

0 100 200 300 4000

100

200

300

Concentration / mmol dm−3

Rate

/s−

1

measured dataexternal program + pgfplotsexternal program + GNUploteverything GNUploteverything pgfplots

0 100 200 300 4000

100

200

300

Concentration / mmol dm−3

Rate

/s−

1

measured dataexternal program + pgfplotsexternal program + GNUploteverything GNUploteverything pgfplots

0 100 200 300 4000

100

200

300

Concentration / mmol dm−3

Rate

/s−

1

measured dataexternal program + pgfplotsexternal program + GNUploteverything GNUploteverything pgfplots

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 16

Page 43: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Diagramme exportierennach PDF

1 \usetikzlibrary{pgfplots.external}\tikzexternalize

nach EPS

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 17

Page 44: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Diagramme exportierennach PDF

1 \usetikzlibrary{pgfplots.external}\tikzexternalize

nach EPS1 \tikzset{external/system call = {latex \tikzexternalcheckshellescape

-halt-on-error -interaction=batchmode -jobname "\image" "\texsource";dvips -o "\image".ps "\image".dvi}}

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 17

Page 45: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Zusammenfassungpgfplots ist ein mächtiges Paket zum Erstellen von Diagrammen

Die Diagramme sind– verschiedensten Typs (Linien, Balken, 2D, 3D, Dreieck)– hoher Qualität– konsistent zum restlichen Dokument– leicht anpassbar im Stil

Keine Drittsoftware nötig

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 18

Page 46: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

Literatur

J. WrightPlotting experimental data using pgfplotsTUGboat 31:1, 2010, p. 50https:

//www.tug.org/members/TUGboat/tb31-1/tb97wright-pgfplots.pdf

Chr. Feuersängerpgfplots manualhttp://pgfplots.sourceforge.net/pgfplots.pdf

http://pgfplots.sourceforge.net/pgfplotstable.pdf

T. Tantaupgf / TikZ manualhttp://sourceforge.net/projects/pgf

Stefan Pinnow Diagramme erstellen mit pgfplotsICVT 19

Page 47: Diagramme erstellen mit pgfplots - dante.de · \usepackage{pgfplots} % LaTeX \usemodule[pgfplots] % ConTeXt logarithmischeAchsen 1 \begin{tikzpicture} \begin{loglogaxis} % Plot code

0 0.2 0.4 0.6 0.8 1 0

0.5

10

0.5

1

φxφy

φx

φy

0 10 20 30

5

10

15

20

25

0 2 4 6 8 10 12 14 160

50

100

150

200

1min load nodes cpus processes0 0.2 0.4 0.6 0.8 1 0

0.5

10

1

x

y

f(x

,y)

=x

·y

Using Coordinate Filters to fix z = 1.4

0

0.2

0.4

0.6

0.8

1

00.20.40.60.81

0

0.5

1

0

0.5

1

−4 −2 0 2 4

100

105

110

115

120

1930 1940 1950 1960 1970

3

4

5

6

7

·107

5

3.3

4

5

7

3.84.2 4.3

4.5

6.5

Pop

ulat

ion

Far Near −6 −4 −2 0 2 4 6−150

−100

−50

0

50

100

150

−11

35

79

−1 13

57

9

−1

13579

l1l2

l 3

00.5 1

1.5 2 0

0.5

10

0.5

1

− 610

110

1

− 32π −π/2 π/2 3

−5

5

tan(x)

101 102 103 104 105 106

10−5

10−4

10−3

10−2

10−1

Degrees of freedom

L2

Err

or

d = 2d = 3d = 4d = 5d = 6

−6 −4 −2 0 2 4 6

−3,000

−2,000

−1,000

0

1,000

2,000

3,000 modelestimate

0 0.2 0.4 0.6 0.8

0.1

0.2

0.3

0.4

0.5

Class 1Class 2Class 3Line

−4 −2 0 2 4−4−2

02

4−10

0

10