Gnuplot ist ein skript- und kommandozeilengesteuertes Programm zur grafischen Darstellung von Messdaten und mathematischen Funktionen. Entwickelt seit 1986 von Thomas Williams und Colin Kelley (aktuelle Hauptversion 5.x), läuft gnuplot auf praktisch jedem System und exportiert in PNG, SVG, PDF, LaTeX, PostScript und viele weitere Formate.
Start und Ausführung
gnuplot # interaktive Kommandozeile
gnuplot -p plot.gp # Skript ausführen, Fenster offen lassen
gnuplot -e "plot sin(x)" # Einzeiler
gnuplot -persist # Fenster nach Skript-Ende halten
Wichtige Befehle
- Plots erzeugen:
plot(2D),splot(3D),replot(letzte Zeichnung wiederholen),refresh - Daten:
plot 'daten.txt' using 1:2 with linespoints,plot 'daten.csv' using 1:2:3 with errorbars - Optionen setzen:
set,unset,show(z.B.set grid,set logscale y,show terminal) - Achsen/Beschriftung:
set xlabel 'Zeit',set ylabel 'Amplitude',set title 'Messreihe',set xrange [0:10] - Ausgabe:
set terminal png,set output 'plot.png',set term pdf - Kurvenanpassung:
fit f(x) 'daten.txt' via a, b
Beispiel-Skript
set terminal pngcairo size 800,600
set output 'sinus.png'
set title 'Sinus und Cosinus'
plot sin(x) title 'sin' with lines, cos(x) title 'cos' with lines
set output # Datei schließen
Daten inline übergeben
plot '-' using 1:2 with lines
0 0
1 1
2 4
3 9
e
Das e beendet die Inline-Daten; praktisch für schnelle Tests ohne Datei.
Praxis-Tipps
- Skripte mit .gp-Endung speichern und per
gnuplot -p skript.gpreproduzierbar ausführen. - Für wissenschaftliche Publikationen:
set terminal postscript epsoderset terminal cairolatex. - Mit
set style data linespointsden Standard-Stil für alle Plots setzen.
Verwandte Grundlagen: Octave-Befehle und Scilab-Befehle nutzten gnuplot historisch als Grafik-Backend; Python-Befehle (matplotlib) und R-Befehle bieten ähnliche Plot-Funktionen.