Gnuplot

Linux-aktivaattori
Loikkaa: valikkoon, hakuun



GnuPlot on monipuolinen kuvaajien tuottamiseen erikoistunut ohjelma. Sitä ei ole tarkoitettu itse laskentaan vaan piirtämään kuvaajat joko annetuista funktioista tai valmiiksi lasketusta datasta. GnuPlot-ohjelmaa käytetään usein myös muiden ohjelmien apuna kuvaajia tuottavana koneistona.

Nimestään huolimatta gnuplot ei ole lisensoitu GNU GPL -lisenssillä eikä myöskään ole samassa mielessä vapaa. Gnuplot on pikemminkin freeware-ohjelma, jota saa vapaasti jakaa muuttamattomana ja jota voi myös muuttaa omaan käyttöönsä. Muunnellun ohjelman edelleen jakamista on kuitenkin rajoitettu.

Gnuplotin omilta www-sivuilta:

Gnuplot is a portable command-line driven interactive data and function plotting utility for UNIX, IBM OS/2, MS Windows, DOS, Macintosh, VMS, Atari and many other platforms. The software is copyrighted but freely distributed (i.e., you don't have to pay for it). It was originally intended as to allow scientists and students to visualize mathematical functions and data. It does this job pretty well, but has grown to support many non-interactive uses, including web scripting and integration as a plotting engine for third-party applications like Octave. Gnuplot has been supported and under development since 1986.

Gnuplot supports many types of plots in either 2D and 3D. It can draw using lines, points, boxes, contours, vector fields, surfaces, and various associated text. It also supports various specialized plot types.

Gnuplot supports many different types of output: interactive screen terminals (with mouse and hotkey functionality), direct output to pen plotters or modern printers, and output to many file formats (eps, fig, jpeg, LaTeX, metafont, pbm, pdf, png, postscript, svg, ...). Gnuplot is easily extensible to include new output modes. Recent additions include interactive terminals based on aquaterm (OSX) and wxWidgets (multiple platforms).

Sisällysluettelo

Käynnistys, lopetus ja opastus

Gnuplot käynnistyy komentoriviltä komennolla

gnuplot

Gnuplot vastaa kertomalla versionsa, mistä saa lisää ohjeita sekä käytettävän terminaalin tyypin. Lopuksi se tulostaa komentokehotteensa gnuplot> ja jää odottamaan käyttäjän syötettä.

        G N U P L O T
        Version 4.2 patchlevel 5
        last modified Mar 2009
        System: Linux 2.6.31-10-386

        Copyright (C) 1986 - 1993, 1998, 2004, 2007 - 2009
        Thomas Williams, Colin Kelley and many others

        Type `help` to access the on-line reference manual.
        The gnuplot FAQ is available from http://www.gnuplot.info/faq/

        Send bug reports and suggestions to <http://sourceforge.net/projects/gnuplot>


Terminal type set to 'wxt'
gnuplot>

Nyt gnuplot on valmis ottamaan vastaan komentoja.

Gnuplotista poistuminen tapahtuu joko komennolla exit tai quit. Myös Unix-maailman tiedoston lopetusmerkki ctrl-d ajaa saman asian.

Gnuplotista, kuten monesta muustakin ohjelmasta, löytyy käytönaikainen ohjeistus, jonka saa käyttöön help-komennolla. Ohjeen jostain tietystä aiheesta saa komennolla help aihe.

gnuplot> help plot
  `plot` is the primary command for drawing plots with `gnuplot`.  It creates
 plots of functions and data in many, many ways.  `plot` is used to draw 2-d
 functions and data; `splot` draws 2-d projections of 3-d surfaces and data.
 `plot` and `splot` contain many common features; see `splot` for differences.
 Note specifically that although the `binary <binary list>` variation does
 work for both `plot` and `splot`, there are small differences between these
 modes.  Furthermore, `plot`'s `axes` option does not exist for `splot`.

 Syntax:
       plot {<ranges>}
            {<function> | {"<datafile>" {datafile-modifiers}}}
            {axes <axes>} {<title-spec>} {with <style>}
            {, {definitions,} <function> ...}

 where either a <function> or the name of a data file enclosed in quotes is
 supplied.  A function is a mathematical expression or a pair of mathematical
 expressions in parametric mode.  The expressions may be defined completely or
 in part earlier in the stream of `gnuplot` commands (see `user-defined`).

 It is also possible to define functions and parameters on the `plot` command
 itself.  This is done merely by isolating them from other items with commas.

Press return for more:

Help-toiminto sivuttaa tulosteensa.

Komennot

Gnuplotia ohjataan antamalla sille komentoriviltä komentoja. Tämä voi tuntua aluksi hieman mutkikkaalta, mutta pienen totuttelun jälkeen toivottavasti onnistuu helposti. Seuraavaan taulukkoon on koottu tärkeimmät komennot.

Yleisimmät komennot
Komento Toiminta Esimerkki
exit / quit lopettaa ohjelman exit
cd Vaihtaa hakemistoa cd "plottaukset/"
pwd Näyttää käytössä olevan hakemiston pwd
set Muuttaa asetuksia set term postscript eps enhanced
show Näyttää asetusten nykyisiä arvoja show term
plot Piirtää 2D-kuvaajan plot sin(x)
splot Piirtää 3D-kuvaajan splot x*y
replot Suorittaa uudelleen edellisen plot- tai splot-komennon replot
fit fit f(x) "mittaus.dat" via a,b
save save var "muuttujat.dat"
load Lataa save-komennolla tallennetun tiedoston load "muuttujat.dat"
reset Alustaa asetukset oletusasetuksiin reset
pause tauko pause -1 "Paina enter..."

Gnuplotille on ominaista, että sen komentoja ei tarvitse kirjoittaa kokonaan, vaan riittää kirjoittaa kustakin komennosta prefiksi, joka on yksikäsitteinen. Esimerkiksi pelkkä p ei riitä komennoksi, sillä komennot pwd, plot ja pause alkavat kaikki p-kirjaimella. Sen sijaan pl viittaa yksikäsitteisesti plot-komentoon.

Funktiot

Ennen itse kuvaajien piirtämistä listataan tärkeimmät gnuplotin osaamat funktiot. Näitä voidaan käyttää suoraan kuvaajien piirtämiseen. Muussa tapauksessa kuvaajaan piirrettävä data voidaan laskea jollain muulla ohjelmalla ja syöttää gnuplotille piirrettäväksi.

Käytettävissä olevat funktiot
abs(x) x:n itseisarvo, |x|
acos(x) arkuskosini
asin(x) arkussini
atan(x) arkustangentti
cos(x) kosini, x annetaan radiaaneina
cosh(x) hyperbolikosini, x annetaan radiaaneina
erf(x) virhefunktio
exp(x) eksponenttifunktio
inverf(x) virhefunktion käänteisfunktio
invnorm(x) normaalijakauman käänteisfunktio
log(x) e-kantainen logaritmi
log10(x) 10-kantainen logaritmi
norm(x) normaalijakauman funktio
rand(x) pseudo-satunnaislukugeneraattori
sgn(x) 1 jos x > 0, -1 jos x < 0, 0 jos x=0
sin(x) sini, x annetaan radiaaneina
sinh(x) hyperbolisini, x annetaan radiaaneina
sqrt(x) neliöjuuri
tan(x) tangentti, x annetaan radiaaneina
tanh(x) hyperbolitangentti, x annetaan radiaaneina

Näiden lisäksi gnuplotista löytyvät ainakin bessel-, gamma-, ibeta-, igamma- sekä lgamma-funktiot. Monet funktioista huolivat parametreikseen myös kompleksilukuja.

Kuvaajien piirtäminen näytölle

Esitellään ensin kuvaajan piirtäminen näytölle omaan ikkunaansa. Kuvan tallentaminen tiedostoon opastetaan myöhemmässä kappaleessa.

Kuvaajien piirtämiseen on käytettävissä kaksi komentoa: plot ja splot. Näistä edellinen on tarkoitettu 2-ulotteisten ja jälkimmäinen 3-ulotteisten kuvaajien piirtoon.

Näiden yleiset syntaksit ovat:

       plot {[ranges]}
            {[function] | {"[datafile]" {datafile-modifiers}}}
            {axes [axes] } { [title-spec] } {with [style] }
            {, {definitions,} [function] ...}

ja

       splot {<ranges>}
            <function> | "<datafile>" {datafile-modifiers}}
            {<title-spec>} {with <style>}
            {, {definitions,} <function> ...}

Tarkastelemme näitä komentoja ensin yksinkertaisissa muodoissa hyvin vähillä parametreilla ja lisäämme sen jälkeen tarkempia määrityksiä piirrettäville kuvaajille.

Funktion piirtäminen

Otetaan ensimmäiset yksinkertaiset esimerkit funktion piirtämisestä:

gnuplot> plot sin(x)/x

Komento avaa uuden ikkunan, johon piirtyy funktion sin(x)/x kuvaaja. Koska tarkempia parametreja ei komennolle annettu, se käyttää oletusasetuksia esimerkiksi kuvaajan rajaamisessa x-suunnassa välille -10:stä +10:een.

Gnuplot-sinxperx.png

Useamman funktion piirtäminen samaan kuvaan onnistuu luettelemalla piirrettävät funktiot pilkulla eroteltuina.

gnuplot> plot x, sin(x)/x, sin(x)

Gnuplot-3-kuvaajaa.png

Kukin funktio on piirretty omalla värillään ja käytetyt funktiot ja värit on lueteltu kuvan yläreunassa. Kuvaaja on taas rajoitettu x-suunnassa samoin kuin edellisessä kohdassa, mutta y-suunnassa se on sakaalattu niin, että kaikki kolme kuvaajaa ovat mahtuneet mukaan.

Vastaavalla tavalla voimme kokeilla kolmiulotteisen pinnan piirtämistä splot-komennolla:

gnuplot> splot sin(x*y/20)

Gnuplot-splot-1.png

Ikkunaan piirtynyttä kolmiulotteista kuvaajaa voi nyt pyöritellä hiirellä ja sitä voi tarkastella haluamassaan asennossa.

Alueen rajaaminen

Rajataan ensimmäiseksi aluetta, jolta kuvaaja piirretään. Oletuksena piirtäminen tapahtui siis x-suunnassa välillä -10 < x < 10]. Piirretään funktio sin(x) ja vaihdetaan rajoiksi -3/2*pi < x < 3/2*pi.

gnuplot> plot [-3.0/2*pi:3.0/2*pi] sin(x)

Alueen rajoitus kirjoitettiin siis muodossa [x1:x2] heti plot-komennon jälkeen, ennen itse funktiota. Huomattavaa on, että murtoluvut on tarkoituksellisesti annettu liukulukumuodossa. Luvut -3/2 ja 3/2 olisivat kokonaislukujen jakolaskuina tuottaneet kokonaisluvut -1 ja 1.

Gnuplot-plot-xrange.png

Myös y-suuntaisia rajoja voi muuttaa:

gnuplot> plot [0:5] [0:1.5] sin(x)

Tässä ensimmäinen väli rajaa x-suunnan ja toinen y-suunnan.

Jotta rajoja ei aina tarvitsisi ilmoittaa piirtokomennon yhteydessä, voidaan oletusrajoja muuttaa set-komennolla. Esimerkiksi x-suuntaisten rajojen muuttaminen välille 0 < x < 10 tapahtuu komennolla

gnuplot> set xrange [0:10]

Vastaavasti y-suuntaisten rajojen oletusarvot muuttuvat välille 0 < y < 1 komennolla

gnuplot> set yrange [0:1]

Tällöin pelkkä komento

gnuplot> plot sin(x)

tuottaa seuraavan kuvaajan.

Gnuplot-plot-x-y-range.png

Kaavion muotoilut plot-komennossa

Kaaviota piirrettäessä sille voidaan tehdä muutamia muotoiluja. Osa muotoiluista tehdään itse plot-komennon yhteydessä. Näitä ovat erityisesti piirrettävään funktioon liittyvät muotoilut, kuten funktion otsikko.

gnuplot> plot 4*x**2+5*x-5 title "Paraabeli", -10*x +4 title "Suora"

Tässä kummallekin piirrettävälle funktiolle on annettu oma otsikkonsa, title.

Kuvaajan piirtotyyliä voi muuttaa with-määreellä kerrottavalla käyrän tyylillä. Valittavissa olevia tyylejä ovat lines, points, linespoints, impulses, dots, steps, fsteps, histeps, errorbars, xerrorbars, yerrorbars, xyerrorbars, boxes, boxerrorbars, boxxyerrorbars, financebars, candlesticks ja vector.

gnuplot> plot 4*x**2+5*x-5 title "Paraabeli" with lines, -10*x +4 title "Suora" with points

Gnuplot-customs-plot.png

Kaavion muotoilut set-komennolla

Osa muotoiluista tehdään asettamalla kaavion ulkoasuun vaikuttavia muuttujia set- ja unset-komennoilla. Asetettavia muuttujia ovat esimerkiksi:

Set-komennolla asetettavia muuttujia
Muuttuja Tehtävä esimerkki
title Asetetaan koko kaavion otsikko set title "Paraabeli ja suora"
xlabel X-akselin otsake set xlabel "Aika (sekunti)"
ylabel Y-akselin otsake set ylabel "Matka (metri)"
xrange X-suuntaiset rajat kuvalle set xrange [0:5.5]
yrange Y-suuntaiset rajat kuvalle set yrange [-1.5:1.5]
autoscale X- ja Y-suuntaisten rajojen asetus automaattisesti set autoscale
key Asettaa käyrien nimiluettelon sijainnin set key 5,6
key Poistaa käyrien nimiluettelon unset key
label Lisää tekstin kaavioon set label "Erityispiste" at -4,200
label Poistaa kaikki lisätyt tekstikentät unset label
logscale Vaihtaa akselien asteikot logaritmisiksi set logscale
logscale Käytetään y-akselilla logaritmista asteikkoa unset logscale; set logscale y
xtics, ytics Muutetaan x- tai y-akselin tulostuvaa jaottelua set xtics (0, 0.2, 0.4, 0.6, 0.8, 1, 1.2)
xtics, ytics Poistetaan ja palautetaan akselien oletusjaottelu unset xtics; set xtics auto

Piirretään esimerkki:

gnuplot> reset
gnuplot> set title "Paraabeli ja suora"
gnuplot> set xlabel "Aika (sekunti)"
gnuplot> set ylabel "Matka (metri)"
gnuplot> set label "Leikkauspiste" at -4.5,140
gnuplot> set xtics (-10, -7.5, -5, -2.5, 0, 2.5, 5, 7.5, 10)
gnuplot> set ytics (-100, -50, 0, 50, 100, 150, 200, 250, 300, 350, 400, 450, 500)
gnuplot> plot 4*x**2+5*x-5 title "Paraabeli" with lines, -10*x +4 title "Suora" with points

Gnuplot-customs.png

Parametrimuotoinen piirtäminen

Piirrettävä kuvaaja voidaan antaa myös parametrimuodossa. Aloitetaan kutenkin tyhjentämällä asetukset, jotta saadaan mm. piirtoalue oletukseksi.

gnuplot> reset

Tämän jälkeen siirrytä parametriseen piirtotilaan:

gnuplot> set parametric
  
        dummy variable is t for curves, u/v for surfaces

Gnuplot ilmoittaa parametrisen tilan olevan nyt käytössä ja että parametrimuuttuja käyrille on t ja pinnoille muuttujat ovat u ja v. Nyt voimme antaa komennon

gnuplot> plot [0:pi*2] 2*cos(t),sin(t)

joka piirtää ellipsin. Muuttuja t käy nyt alarajasta 0 ylärajaan 2*pi ja pisteiden x-arvo saadaan kaavalla 2*cos(t) ja vastaava y-arvo kaavalla sin(t).

Gnuplot-parametric.png

Myös 3-kulotteisten kuvien parametrimuotoinen piirtäminen onnistuu. Kuten parametritilaan siirryttäessä todettiin, käytetään pintoja piirtäessä muuttujia u ja v. Piirretään torus-pinta.

splot [0:pi*2] (2+cos(v))*cos(u),(2+cos(v))*sin(u),sin(v)

Gnuplot-torus.png

Takaisin parametrisesta tilasta palataan komennolla

gnuplot> unset parametric

        dummy variable is x for curves, x/y for surfaces

Tähän gnuplot vastaa ilmoittamalla, että nyt käytettävissä olevat tuntemattomat muuttujat ovat x 2-ulotteisille käyrille sekä x ja y 3-ulotteisille pinnoille.

Datan piirtäminen

Gnuplotilla onnistuu helposti myös muulla ohjelmalla tai laitteistolla hankitun datan piirtäminen kaavioksi. Oletetaan, että meillä on tiedostossa mittaukset.dat seuraavanlaista dataa:

# mittaukset.dat
# Risuaidalla alkavat rivit ovat kommentteja
#x      y       virhex  virhey
2       32      0.2     2
3       34.1    0.1     1
4       38.4    0.1     3
5       43.8    0.13    4.5
6.2     43.5    0.18    4
7.1     47.9    0.4     2
8.4     49.9    0.5     0.3
8.9     53      1.1     0.1
9.5     56.2    0.05    0.6

Tässä tiedostossa kaikki #-merkillä alkavat rivit ovat kommentteja. Itse data on järjestetty sarakkeiksi, jotka on eroteltu välilyönneillä tai sarkainmerkeillä, eli tabulaattoreilla. Kaikkein yksinkertaisimmin tämän datan piirtäminen onnistuu komennolla:

gnuplot> plot "mittaukset.dat"

Tällöin gnuplot lukee tiedostosta automaattisesti kaksi ensimmäistä saraketta x- ja y-arvoiksi ja tuottaa seuraavan kuvan.

Gnuplot-mittaukset-1.png

Jos kuvaajan pisteet halutaan yhdistää viivalla, voidaan tämä pyytää gnuplotilta lisäämällä komentoon with lines.

gnuplot> plot "mittaukset.dat" with lines

Gnuplot-mittaukset-2-withlines.png

Jos data-tiedoston kahdella seuraavalla sarakkeella olevat virhemarginaalit halutaan mukaan kuvaajaan, voidaan gnuplotia pyytää tulostamaan nekin määritteellä with xyerrorbars.

gnuplot> plot "mittaukset.dat" with xyerrorbars

Gnuplot-mittaukset-3-withxyerrorbars.png

Aina sarakkeet eivät ole data-tiedostossa halutussa järjestyksessä. Jos esimerkiksi haluaisimmekin piirtää ylläolevasta datasta y-suuntaisen virheen suuruuden x:n funktiona, tarvitsemmekin sarakkeita 1 ja 4. Käytettävät sarakkeet voi valita using-määritteellä.

gnuplot> plot "mittaukset.dat" using 1:4 with lines

Jos nämä halutaan vielä näkyviin samaan kuvaajaan itse mittaustulosten kanssa, voidaan gnuplotia pyytää piirtämään molemmat samaan kuvaan.

gnuplot> plot "mittaukset.dat" using 1:2 with lines, "mittaukset.dat" using 1:4 with lines

Kun lisäämme kummallekin piirrettävälle kuvaajalle vielä otsikot title-määritteellä, saamme aikaiseksi seuraavan komennon ja kuvan:

gnuplot> plot "mittaukset.dat" using 1:2 with lines title "Mittaus", "mittaukset.dat" using 1:4 with lines title "Virhe"

Gnuplot-mittaukset-4-mittausjavirhe.png

Funktion sovittaminen dataan

Yllä olevan datan pisteet ovat lähes suoralla linjalla, joten voimme koettaa sovittaa pisteitä sopivalle suoralle. Määritellään ensin suoran funktio f(x)' kertoimilla A ja B.

gnuplot> f(x)=A*x+B

Tehdään itse sovitus.

gnuplot> fit f(x) "mittaukset.dat" via A,B

Gnuplot tulostaa jonkin verran tekstiä, joka kertoo sovituksen etenemisestä iteraatiokierroksilla ja lopullisista kertoimien A ja B arvoista.

 Iteration 0
 WSSR        : 10027.4           delta(WSSR)/WSSR   : 0
 delta(WSSR) : 0                 limit for stopping : 1e-05
 lambda   : 4.66589                                        

initial set of free parameter values

A               = 3.66307
B               = 55.6119
/                        

 Iteration 1
 WSSR        : 1051.62           delta(WSSR)/WSSR   : -8.53518
 delta(WSSR) : -8975.81          limit for stopping : 1e-05   
 lambda   : 0.466589                                          

resultant parameter values

A               = -0.570519
B               = 53.3097  
/                          

 Iteration 2
 WSSR        : 34.2408           delta(WSSR)/WSSR   : -29.7126
 delta(WSSR) : -1017.38          limit for stopping : 1e-05   
 lambda   : 0.0466589                                         

resultant parameter values

A               = 2.51035
B               = 29.79  
/                        

 Iteration 3
 WSSR        : 14.1767           delta(WSSR)/WSSR   : -1.41529
 delta(WSSR) : -20.0642          limit for stopping : 1e-05   
 lambda   : 0.00466589                                        

resultant parameter values

A               = 3.05481
B               = 25.9492
/                        

 Iteration 4
 WSSR        : 14.1766           delta(WSSR)/WSSR   : -3.78557e-06
 delta(WSSR) : -5.36666e-05      limit for stopping : 1e-05
 lambda   : 0.000466589

resultant parameter values

A               = 3.0557
B               = 25.943

After 4 iterations the fit converged.
final sum of squares of residuals : 14.1766
rel. change during last iteration : -3.78557e-06

degrees of freedom    (FIT_NDF)                        : 7
rms of residuals      (FIT_STDFIT) = sqrt(WSSR/ndf)    : 1.42311
variance of residuals (reduced chisquare) = WSSR/ndf   : 2.02523

Final set of parameters            Asymptotic Standard Error
=======================            ==========================

A               = 3.0557           +/- 0.1874       (6.133%)
B               = 25.943           +/- 1.222        (4.711%)


correlation matrix of the fit parameters:

               A      B
A               1.000
B              -0.922  1.000

Nyt funktio f(x) on pisteisiin sovitettu suora ja voimme tulostaa pisteet ja suoran samaan kuvioon.

gnuplot> plot "mittaukset.dat" with xyerrorbars title "Mittaus", f(x)

Gnuplot-mittaukset-5-mittausjasovitus.png

Kuvaajien piirtäminen tiedostoon

Kuvaajan piirtäminen tiedostoon ei poikkea suurestikaan näytölle piirtämisestä. Piirtäminen tapahtuu itse asiassa aivan samalla tavalla. Pitää vain valita kohde, mihin kuva piirretään. Aivan alussa, kun käynnistimme gnuplotin, se ilmoitti meille:

Terminal type set to 'wxt'

Tämä tarkoittaa käytännössä, että gnuplot on tilassa, jossa kuvat piirretään näytölle ilmestyvään ikkunaan. Jos vaihdamme terminaalin tyypiksi jotain muuta kuin wxt, tulostuu kuva jonnekin muualle. Muita vaihtoehtoisia terminal-muuttujan arvoja ovat mm. postscript, png, gif, jpeg, latex, pstrics, fig, dxf, svg, x11 ja lukuisat muut, jotka saa lueteltua komennolla

gnuplot> ? set term

Piirretään ensin kuva tavalliseen tapaan näytölle. Aloitetaan nollaamalla asetukset.

gnuplot> reset
gnuplot> plot [-10:10] [-0.5:1.2] sin(x)/x title "First", (x**2-1)/8.0 title "Second"

Tämän jälkeen vaihdetaan terminaaliksi ensin png, kerrotaan tulostustiedoston nimi asettamalla output-muuttuja ja lopuksi piirretään edellisellä plot- (tai splot-) käskyllä piirretty kuva uudelleen, tällä kertaa png-terminaaliin. Siis tiedostoon.

gnuplot> set term png
Terminal type set to 'png'
Options are 'nocrop medium '
gnuplot> set output "gnuplot-kaksi_kuvaajaa.png"
gnuplot> replot

Huom! Tässä vaiheessa tulee olla huolellinen, sillä joihinkin tiedostomuotoihin tulostettaessa tiedoston kirjoittamista ei saateta välttämättä loppuun ennen kuin tiedosto erikseen suljetaan esimerkiksi komennolla

gnuplot> unset output

tai vaihtamalla terminaalia joksikin toiseksi.

Gnuplot-kaksi kuvaajaa.png

Kirjoitetaan sama kuva vielä eps-muotoon, joka sopii esimerkiksi LaTeX-tiedostojen kuvien tyypiksi ja joka vektorimuotoisena kuvana on tarkka ja suositeltava.

gnuplot> set term postscript eps enhanced
Terminal type set to 'postscript'
Options are 'eps enhanced defaultplex \
   leveldefault monochrome colortext \
   dashed dashlength 1.0 linewidth 1.0 butt \
   palfuncparam 2000,0.003 \
   "Helvetica" 14 '
gnuplot>  set output "gnuplot-kaksi_kuvaajaa.eps"
gnuplot> replot
gnuplot> unset output

Postscript-terminaalin yhteydessä on suositeltavaa käyttää lisämäärettä enhanced, joka kertoo, että käytetään postscriptin laajennettua versiota, joka osaa mm. erikoismerkkejä sekä joitain LaTeX-muotoiluja, kuten potenssimerkinnän a^b.

Gnuplot-skriptien käyttö

Monimutkaisempien kuvioiden piirtoa voi koettaa automatisoida jonkin verran kirjoittamalla piirtokomennot valmiiksi erilliseen tekstitiedostoon ja lukemalla sen sitten kerralla gnuplotille.

# Esimerkkitiedosto
# komennot.gpl
set autoscale
set xtics auto
set ytics auto
set title "Hieno kuva"
set xlabel "Vaaka-akseli"
set ylabel "Pystyakseli"
plot [-10:10] [-0.5:1.2] sin(x)/x title "First", (x**2-1)/8.0 title "Second"

Komentojonon lukeminen gnuplotiin tapahtuu load-komennolla.

gnuplot> load "komennot.gpl"

Huomautuksia

Muutamia huomautuksia gnuplotin käytöstä.

Ääkköset

Ääkköset voivat tuottaa gnuplotille pientä päänvaivaa, sillä se ei tue niitä. Ääkkösiäkin voi kuitenkin syöttää sille kiertoteitse antamala ne suoraan numerokoodeina, esimerkiksi:

set title "P\344\344otsikko"

Skandinaavisten merkkien numerokoodit ovat:

  • å : 345
  • Å : 305
  • ä : 344
  • Ä : 304
  • ö : 366
  • Ö : 326

Kannattaa myös huomata, että merkkijonot eivät saa päättyä numerokoodeihin, joten tällaisissa tapauksissa on syytä kirjoittaa merkkijonon loppuun esimerkiksi ylimääräinen välilyönti.

Lisätietoa

Gnuplotin toiminnot eivät suinkaan kaikki olleet vielä tässä. Lisää tietoa gnuplotin toiminnasta voi etsiä sen omasta ohjetoiminnosta, tämän sivun ylälaidan linkeistä sekä tietenkin Googlella.

Hyvää työtä ja kauniita kuvia!