prologues := 3;
outputformat := "svg";
defaultfont := "cmr10";
defaultscale := 1.1;
color Blue,Teal,Orange,Green,Grey,Light,Wash;
Blue := (0,84/255,159/255); Teal := (0,177/255,183/255);
Orange := (246/255,168/255,0); Green := (87/255,171/255,39/255);
Grey := (100/255,101/255,103/255); Light := (236/255,236/255,237/255);
Wash := (232/255,241/255,250/255);
% Format displayed numbers to hundredths using integer strings.
vardef numlabel(expr value)=
 save n,whole,frac; numeric n,whole,frac;
 n:=round(100abs value); whole:=floor(n/100); frac:=n mod 100;
 (if value<-.005: "-" & fi decimal whole
  if frac>0: & "." & if frac<10: "0" & fi decimal frac fi)
enddef;
pickup pencircle scaled .9;
outputtemplate := "MPT-14-003.svg";
input graph;
numeric n,t[],observed[],model[],low[],high[],valid[];
n:=0;
gdata("data/readings.dat", row,
 n:=n+1; t[n]:=scantokens row1; observed[n]:=scantokens row2;
 model[n]:=scantokens row3; low[n]:=scantokens row4;
 high[n]:=scantokens row5; valid[n]:=scantokens row6;
);
beginfig(1);
fill unitsquare xscaled 320 yscaled 220 withcolor white;
% BEGIN DRAWING
picture panel;
panel:=image(
 draw (0,115)--(0,0)--(112,0) withcolor Grey;
 for j=1 upto n:
  if valid[j]=1:
   draw (14t[j],19low[j])--(14t[j],19high[j]) withcolor Grey;
   fill fullcircle scaled 3 shifted (14t[j],19observed[j]) withcolor Blue;
  fi
 endfor;
 label.lft("0",(0,0)); label.lft("6",(0,114));
 label.bot("0",(0,0)); label.bot("8",(112,0));
 label.bot("Time (s)",(56,-13));
);
draw panel shifted (40,48);
draw panel shifted (188,48);
label.top("(a) Intervals",(96,176));
label.top("(b) With model",(244,176));
draw (188,67)--(300,48+19model[n])
 dashed evenly withcolor Orange;
label("Response (a.u.)" infont "cmr8",(165,196));
% END DRAWING
label.lft("MPT-14-003" infont "cmr8",(312,210));
setbounds currentpicture to unitsquare xscaled 320 yscaled 220;
endfig;
end.
