Tor 12 (Beate)
Histogramme mit GnuPlot
Heute ein kleiner Tipp, wie man Histogramme in GnuPlot erstellt. Dabei soll aus verschiedenen Dateien jeweils die zweite Spalte in einem Histogramm dargestellt werden.
Optional ein Gitternetz anlegen
set grid
Breite der Boxen im Histogramm festlegen
set boxwidth 0.9 absolute
Style (also Histogram) festlegen Gap 1 bezeichnet den Platz zwischen Säulen, falls mehrere Spalten zur Säulendarstellung gewählt werden.
set style histogram gap 1 title offset character 0, 0, 0
Optional, zeigt welches Zeichen in den Dateien zur Bezeichnung von fehlenden Daten verwendet wird
set datafile missing '-'
Darstellung der Daten in Form von Histogrammen
set style data histograms
Histogramme mit Mustern füllen, kein Rahmen
set style fill pattern 1.00 border -1
Bestimmen, an welche Stelle Beschreibung an der X Achse gesetzt werden; In diesem Fall werden sie um 45 Grad gedreht, damit sich die Intervalle nicht überlappen
set xtics border in scale 1,0.5 nomirror rotate by -45 offset character 0, 0, 0
Intervalle für die x-Achse angeben e.g. "0.0 - 0.1" ist die Achsenbeschreibung für das Intervall, 0 die erste Zeile in der Datei
set xtics ("0.0 - 0.1" 0, "0.1 - 02" 1, "0.2 - 0.3" 2, "0.3 - 0.4" 3, "0.4 - 0.5" 4, "0.5 - 0.6" 5, "0.6 - 0.7" 6, "0.7 - 0.8" 7, "0.8 - 0.9" 8, "0.9 - 1.0" 9) set title "Histogram of CCL values"
y Intervall angeben; Achsen Bezeichnung wählen
set yrange [ 0 : * ] noreverse nowriteback set xlabel "CCL" set ylabel "percentage" rotate by 90
Legende kommt nach Links
set key left
Ausgabe Format
set term post landscape # eps set output 'histogramCCLGC.ps'
Plotten der Dateien; In jeder Datei wird die zweite Spalte geplottet
plot \ 'del2006_july2005/not_normalized/plain/cclOut' using 2 title 'del.icio.us, complete URLs',\ 'del2006_july2005/normalized/plain/cclOut' using 2 title 'del.icio.us, host only URLs'
Weitere Anregungen und Beispiele gibt es unter http://gnuplot.sourceforge.net/demo_4.3/histograms.html