Ferill teiknaður og lagaður að gögnum

Föll teiknuð í Gnuplot

Ræstu nú aftur upp Gnuplot í gagnvirka hamnum eins og þú gerðir í upphafi. Til að teikna grunn-hornaföllin tvö keyrir þú skipunina:

plot sin(x), cos(x)

Þú getur bætt fleiri föllum við með því að aðgreina þau með kommum. Eins er hægt að blanda saman gröfum af einni eða fleiri gagnaskrám saman við föllin. Það er einmitt það sem við ætlum að gera á eftir.

Ferill skilgreindur með breytum

Við getum líka skilgreint okkar eigin föll í Gnuplot. Til dæmis jöfnu beinnar línu:

f(x) = a*x + b

Hér eru fastarnir a og b enn óskilgreindir svo enn er ekki hægt að teikna fallið upp. Við ætlum hins vegar að skilgreina þá með því að láta Gnuplot hnika þá til þar til línan fellur eins vel að gögnunum og hægt er. Þar til hún er besta línan í gegnum gögnin. Sláðu inn:

fit f(x) 'pendúll-rafræn_klukka.dat' using (sin($1/2*2*pi/360)**2):3 via a,b

Ef allt gengur að óskum á Gnuplot að æla út úr sér nokkrum línum sem enda á


Stundum þarf að vísu að koma Gnuplot aðeins á sporið með því að gefa því einhver upphafsgildi. Þá getur nægt að keyra eitthvað í líkingu við:

a = 0.35; b = 1.4

áður en fit-skipunin er keyrð. Ef vandamálin eru viðvarandi er rétt að skoða hvort formúlan í using stillingunni sé rétt.

Besta lína teiknuð með gögnum

Með rétta fasta getum við svo teiknað fallið inn á grafið með því að bæta , f(x) aftan við teikniskipunina í skipanaskránni sem við gerðum í síðasta hluta:

plot 'pendúll-rafræn_klukka.dat' using (sin($1*pi/360)**2):3:(0.5*sin($1*pi/180)*$2*pi/180):4 with xyerrorbars, f(x)

Upplýsingar um bestu línu skrifaðar inn á grafið

Oft viljum við skrá upplýsingar um fastana sem við vorum að finna út frá sniðna ferlinum á sjálft grafið. Þá má nota label stillinguna. Í grunninn getum við sett texta inn með stillingunni:

label 1 "Þetta er svaka flott" at 0.1,1.39

En þegar við viljum bæta breytum (t.d. hallatölunni og skurðpunktinum sem Gnuplot fann við að sníða ferilinn að fallinu) við merkinguna þurfum við að sníða þær með sprintf() fallinu:

label 1 sprintf("Hallatala: h=%3.2f\nSkurðpunktur: k=%3.2",a,b) at 0.1,1.39