Gnuplot: Unterschied zwischen den Versionen
Michi (Diskussion | Beiträge) |
Michi (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(5 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 108: | Zeile 108: | ||
Leider kann Gnuplot die Webbrowsernamen nicht automatisch aus der Datendatei extrahieren, doch lässt sich das mit ein wenig Shell-Programmierung löschen. Ein Skript "weblog.plot" für Gnuplot könnte dann wie folgt aussehen. | Leider kann Gnuplot die Webbrowsernamen nicht automatisch aus der Datendatei extrahieren, doch lässt sich das mit ein wenig Shell-Programmierung löschen. Ein Skript "weblog.plot" für Gnuplot könnte dann wie folgt aussehen. | ||
<pre class=wiki> | |||
set title "Zugriffe mit unterschiedlichen Webbrowsern" | |||
set xlabel "Browser" | |||
set ylabel "Zugriffe" | |||
set xtics rotate ("Konqueror_3.4" 1, "Mozilla_4.0" 2, "Mozilla_5.0" 3, "Mozilla_Firefox_1.0" 3) | |||
set terminal png | |||
set output "weblog.png" | |||
plot "tmp/weblog.txt" using :2 title "Anzahl Zugriffe per Browser" with boxes | |||
</pre> | |||
Ausführen des Skripts mit Gnuplot und Erzeugen der Datei "~/weblog.png". | Ausführen des Skripts mit Gnuplot und Erzeugen der Datei "~/weblog.png". | ||
Zeile 124: | Zeile 126: | ||
== Weblinks == | == Weblinks == | ||
{{Weblinks}} | |||
{{url|US|Clark Gaylord|eng|http://www.gnuplot.info/|Gnuplot homepage|Offizielle Homepage|sublink=<br> | |||
* [http:// | * [http://www.gnuplot.info/documentation.html Gnuplot documentation] | ||
* [http://gnuplot.sourceforge.net/demo_4.2/ Demo scripts for Gnuplot version 4.2]}} | |||
{{url|DE|David Völker|ger|http://userpage.fu-berlin.de/~voelker/gnuplotkurs/gnuplotkurs.html|Grundkurs Gnuplot}} | |||
{{ | {{url|US|Wikimedia|eng|http://meta.wikimedia.org/wiki/Gnuplot|Gnuplot}} | ||
{{url_dewikipedia|Gnuplot|Gnuplot}} | |||
{{Fuss}} | |||
=== Alte Weblinks === | |||
{{Weblinks}} | |||
{{url|US|Los Alamos National Laboratory|eng|http://t16web.lanl.gov/Kawano/gnuplot/index-e.html|Gnuplot}} | |||
{{Fuss}} | |||
{{cat|Funktionenplotter}} | {{cat|Funktionenplotter}} | ||
{{cat|Statistik}} | {{cat|Statistik}} |
Aktuelle Version vom 7. Februar 2010, 15:24 Uhr
Gnuplot ist ein Funktionenplotter, der zwei- oder dreidimensionale grafische Darstellungen Funktionen und Daten erzeugt.
Installation
Ubuntu
$ sudo apt-get install gnuplot
Optionen
Terminals
Mögliche Terminals sind die folgenden.
Terminal | Funktion |
---|---|
corel | CorelDRaw-Zeichnung |
gif | GIF-Bild |
latex | LaTeX-Quelltext. Dabei kann auch der Schrifttyp und die Grösse der Achsenbeschriftung eingestellt werden. Mit "set terminal latex roman 12" wird die Ausgabe auf die Serifenschrift "(Times) Roman" in Schriftgrösse 12 Punkt umgestellt. |
PDF-Datei | |
png | PNG-Bild. Mit "set terminal size 200,300" kann die Grösse des Bildes (Höhe, Breite) in Pixeln eingestellt werden. |
postscript | Postscript-Datei |
x11 | Ausgabe im X-Window-Fenster |
Eine detaillierte Übersicht aller Terminals mit ihren Parametern findet sich in der Gnuplot-Dokumentation.
Mathematische Funktionen
Gnuplot beherrscht alle mathematischen Funktionen, die in der Programmiersprache C bekannt sind, sind unter anderen die folgenden.
Funktion | Zweck |
---|---|
cos(x) | Cosinus |
sin(x) | Sinus |
tan(x) | Tangens |
Diagrammdarstellung
Modus | Funktion |
---|---|
with points | Darstellung in Punktform (Standarddarstellung). |
with lines | Darstellung in Punktform, wobei die Punkte durch Linien verbunden werden. |
with filledcurves | Darstellung in Punktform, wobei die Punkte durch Linien verbunden und die entstehenden Flächen gefüllt werden. |
with boxes | Darstellung in Balkenform. |
with impulse | Darstellung als senkrechte Linien für jeden Datenpunkt. |
with filledcurves | Darstellung als gefüllte Flächen. |
with | Anzeige aller Optionen. |
Gnuplot erkennt automatisch, ob es genügend Spalten für einen bestimmten Modus gibt. Enthält eine Quelldatei mehr als zwei Spalten, so wird dem Programm mit "using <spalte1>:<splate2>" mitgeteilt, welche es für die x- und y-Achse verwenden soll. Beispielsweise verwendet "using :2" so die zweite Spalte.
Verwendung
Starten von Gnuplot. Die Meldung "Terminal type set to 'x11'" weist darauf hin, dass für grafische Ausgaben ein X-Window-Fenster benutzt wird.
$ gnuplot ... Terminal type set to 'x11' gnuplot>
Öffnen eines Fensters, das den Verlauf der Sinusfunktion anzeigt.
gnuplot> plot sin(x)
Öffnen eines Fensters, das den Verlauf der Sinusfunktion anzeigt. Dabei soll die Ausgabe als Pixelbild in der PNG-Datei "sinus.png" im Heimatverzeichnis des aktuellen Benutzers landen.
gnuplot> set terminal png Options are 'nocrop medium size 640,480 ' gnuplot> set output "sinus.png" gnuplot> plot sin(x)
Verlassen von Gnuplot.
gnuplot> exit
Anwendungsbeispiel
Gnuplot eignet sich besonders auch für die Analyse von Daten, die typischerweise in Dateien oder Datenbanken vorliegen. Die folgende Beispieldatei enthält die Zugriffsstatistik einer Webseite, wobei jede Zeile einen Datensatz enthält. Als Spaltentrenner werden von Gnuplot dabei Tabulatoren und Leerzeichen angesehen, kommaseparierte Dateien bereiten Gnuplot Probleme.
$ more weblog.txt Konqueror_3.4 1 Mozilla_4.0 8 Mozilla_5.0 222 Mozilla_Firefox_1.0 30
Folgender Befehl erzeugt eine Übersicht, wobei "using :2" dafür steht, dass Gnuplot die zweite Spalte auswertet, "title 'Anzahl Zugriffe'" erzeugt die Balkenlegende, "with boxes" legt die Balkenform fest.
gnuplot> plot "tmp/weblog.txt" using :2 title "Anzahl Zugriffe" with boxes
Leider kann Gnuplot die Webbrowsernamen nicht automatisch aus der Datendatei extrahieren, doch lässt sich das mit ein wenig Shell-Programmierung löschen. Ein Skript "weblog.plot" für Gnuplot könnte dann wie folgt aussehen.
set title "Zugriffe mit unterschiedlichen Webbrowsern" set xlabel "Browser" set ylabel "Zugriffe" set xtics rotate ("Konqueror_3.4" 1, "Mozilla_4.0" 2, "Mozilla_5.0" 3, "Mozilla_Firefox_1.0" 3) set terminal png set output "weblog.png" plot "tmp/weblog.txt" using :2 title "Anzahl Zugriffe per Browser" with boxes
Ausführen des Skripts mit Gnuplot und Erzeugen der Datei "~/weblog.png".
gnuplot> load "weblog.plot"
Die Ergebnisdiagramme können je nach Art und Menge der verwendeten Dateien allerdings sehr hässlich bis unbrauchbar aussehen...
Weblinks
Herausgeber | Sprache | Webseitentitel | Anmerkungen |
---|---|---|---|
Clark Gaylord | eng | Gnuplot homepagewbm |
Offizielle Homepage |
David Völker | ger | Grundkurs Gnuplotwbm | |
Wikimedia | eng | Gnuplotwbm | |
Wikipedia | ger | Gnuplotwbm | Enzyklopädischer Artikel |
Alte Weblinks
Herausgeber | Sprache | Webseitentitel | Anmerkungen |
---|---|---|---|
Los Alamos National Laboratory | eng | Gnuplotwbm |