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-09-003.svg";
beginfig(1);
fill unitsquare xscaled 320 yscaled 220 withcolor white;
% BEGIN DRAWING
numeric xmin,xmax,ymin,ymax,xx,yy;
xmin:=0; xmax:=360; ymin:=-1.2; ymax:=1.2;
vardef P(expr x,y)=
 (40+250*(x-xmin)/(xmax-xmin),35+145*(y-ymin)/(ymax-ymin))
enddef;
for i=0 upto 4:
 xx:=xmin+i*(xmax-xmin)/4; yy:=ymin+i*(ymax-ymin)/4;
 draw P(xx,ymin)--P(xx,ymax) withcolor Light;
 draw P(xmin,yy)--P(xmax,yy) withcolor Light;
 label.bot(numlabel(xx),P(xx,ymin));
 label.lft(numlabel(yy),P(xmin,yy));
endfor
draw P(xmin,ymax)--P(xmin,ymin)--P(xmax,ymin) withcolor Grey;
draw for a=0 step 60 until 360:
 if a>0: .. fi P(a,sind a)
endfor dashed evenly withpen pencircle scaled 1.5 withcolor Teal;
draw for a=0 step 3 until 360:
 if a>0: -- fi P(a,sind a)
endfor withcolor Blue;
for a=0 step 60 until 360:
 fill fullcircle scaled 4 shifted P(a,sind a) withcolor Orange;
endfor
% END DRAWING
label.lft("MPT-09-003" infont "cmr8",(312,210));
setbounds currentpicture to unitsquare xscaled 320 yscaled 220;
endfig;
end.
