====== gnuplot ====== * http://www.jkrieger.de/tools/gnuplot/index.html * http://www.gnuplot.info/ ===== Schleifen ===== channel = 0 datafile = 'zeuch.txt' load 'bla.plt' set grid y set yrange [30:70] set label sprintf("Channel %g",channel+1) at graph 0.95, 0.1 right f(x)=a*x+b fit f(x) datafile index channel u 2:1 via a,b set xrange [a*30+b:a*70+b] #fit doesn't converge the other way round a=1/a b=-b*a plot datafile index channel using 1:2 title "bla", f(x) pause mouse #weiter bei linker if(MOUSE_KEY==1) channel=channel+1 #zurueck bei rechter if(MOUSE_KEY==3) channel=channel-1 #Ende bei mittlerer if(MOUSE_KEY==2) channel=channel+99 if(channel<21) reread ===== Zwei verschiedene y Achsen ===== set y2tics set ytics nomirror set angles degree tstart=9.2 tstop=12.8 g(x)=b fit g(x) data using ($1>tstart && $1 ===== Höhere Auflösung ===== set samples 2000 ===== Zeiten/Datum auf einer Achse verwenden ===== set xdata time set timefmt "%d.%m.%y" set format x "%m.%y" ===== Histogramm ===== (Gnuplot übernimmt das Binning!) binwidth=0.5 bin(x,width)=width*floor(x/width) plot 'data' u (bin($6,binwidth)):(1.0) smooth freq with boxes ====== Plot Fenster ====== ===== Befehle ===== mit **h** abrufen (zB a -> autoscale, r -> ruler,...) ===== Mehrere Plots in ein Fenster ===== set multiplot layout 4,1 * 4 in y Richtung * 1 in x Richtung * danach einfach mehrere plot Befehle... ==== Problem: Unterschiedliche Plot Ausdehnungen bei untersch. Achsenbeschriftungen ==== oder auch: gleiche x-tics nicht übereinander Lösung: (vor set multiplot...) set lmargin 5 genauso mit rmargin bmargin tmargin ... ==== x-tics Beschriftungen aus- und einschalten ==== zB um nur im untersten plot beschriftungen anzuzeigen (bei gleichen x-Achsen) * aus: set format "" * ein: (gnuplot Standard) set format "%g" ===== Mehrere Plot Fenster ===== (in einer Schleife... siehe [[#schleifen]]) plotnr=0 set term x11 plotnr plot bla index plotnr plotnr=plotnr+1 ===== Plot Fenster Einstellungen ===== * Plot Fenster offen lassen: * auch bei Programm Ende: set term x11 persist * zB beim starten aus einem Script, beenden per Mausklick (button2=mittlere Maustaste) ins Fenster, kein schließen nötig! nach dem plot Befehl: pause mouse button2 * Plot Fenster Position ausrichten (zB ganz nach rechts, 20px vom oberen bildrand entfernt) set term x11 position 99999,20