21/5/2021

Snel een grafiek op de commandolijn met gnuplot

Filed under: — cybrarian @ 12:58 pm

Gnu plot, gnuplot of plotutils zijn in zowat alle distributies aanwezig en te installeren met de pakketbeheerder.
bv opensuse:
sudo zypper install plotutils

De volgende 2 NIEUWE pakketten zullen worden geïnstalleerd:
libplot2 plotutils

Raspberry pi:
sudo apt-get install gnuplot

Er zal 19.9 Mb extra schijfruimte gebruikt worden.

En dan wordt bv versie 5.0 geïnstalleerd, waarbij ook wat “Qt” onderdelen worden afgehaald.

Snel een grafiekje weergeven in gnuplot:
– je start gnuplot, je krijgt een gnuplot prompt, en dan kan je commando’s geven om een bestand te lezen en een grafiek weer te geven in een “Gnuplot window”.

Eerst moet je eens kijken hoe de data van de kolommen gescheiden is (bv met een , teken)
set datafile separator ","
en daarna

bv:
gnuplot> plot 'SRdataComma.txt' using 1:2
gnuplot> plot 'SRdataComma.txt' using 1:3
gnuplot> plot 'SRdataComma.txt' using 1:4 with lines

Toegepast op een eenvoudig bestand met kolommen gegevens, bv
(eerste kolom is een volgnummer-geen gegevens)

1,52616,52616,52616
2,51540,51540,52616
3,51540,51540,52616
4,51540,51540,52616
5,51540,51540,52616
6,51540,51540,52616
7,50464,50464,52616
8,50464,51540,52616
9,50464,51540,52616
10,50464,51002,52616
11,50464,51540,52616
12,50464,51540,52616
13,50464,51540,52616
14,50464,51002,52616
15,50464,51002,52616
16,50464,50464,52616

Uitvoer

Naar png :
gnuplot> set term png

Terminal type set to ‘png’
Options are ‘nocrop enhanced size 640,480 font “arial,12” ‘

gnuplot> set output "gnuplotexample.png"
(geeft geen reaktie)

gnuplot> replot
gnuplot> set term x11

Terminal type set to ‘x11’
Options are ‘ nopersist enhanced’

Het gevraagde png bestand staat in de map waar je aan het werken was.

grafisch bestand
upd. 3/6: Ineens naar png bestand:

gnuplot -e "set terminal png size 400,300; set output 'xyz.png'; plot 'SRdataComma.txt' using 1:4 with lines"

Scheidingsteken
Je kan ook de separator opnemen voor de zekerheid (aan het begin):

gnuplot -e "set datafile separator ','; set terminal png size 400,300; set output 'xyz.png'; plot 'SRdataComma.txt' using 1:4 with lines"

Of de eerste lijn als titel beschouwen:

gnuplot -e "set datafile separator ','; set key autotitle columnhead; set terminal size 400,300; set output 'SRplot.png'; plot 'SRdata.txt' using 1:3 with lines"

Meer lijnen (bv min/max)

Je herhaalt de bron en de kolomopgave:

gnuplot -e set terminal size 400,300; set output 'SRplot.png'; plot 'SRdata.txt' using 1:2 with lines, 'SRdata.txt' using 1:3 with lines", 'SRdata.txt' using 1:4 with lines"

Reacties zijn gesloten.

Powered by WordPress