input graph; prologues := 3; outputformat := "svg"; outputtemplate := "VIZ-08-004.svg"; color Blue, Teal, Orange, Wash, Missing; Blue := (0, 84 / 255, 159 / 255); Teal := (0, 177 / 255, 183 / 255); Orange := (246 / 255, 168 / 255, 0); Wash := (232 / 255, 241 / 255, 250 / 255); Missing := (236 / 255, 236 / 255, 237 / 255); vardef P(expr x, y) = (55 + 345 * (x - (0.5)) / (4.0), 45 + 175 * (y - (0)) / (75)) enddef; def rect(expr x, y, xx, yy, col) = fill P(x, y)--P(xx, y)--P(xx, yy)--P(x, yy)--cycle withcolor col; enddef; beginfig(1); fill unitsquare xscaled 420 yscaled 280 withcolor white; label.llft("VIZ-08-004" infont "cmr8", (414, 272)); label.rt(btex Whiskers: min/max; box: Q1/median/Q3 etex scaled .65, (55, 246)); draw P(0.5, 75)--P(0.5, 0)--P(4.5, 0) withcolor .4white; label.bot(btex 1st etex scaled .7, P(1, 0)); label.bot(btex 2nd etex scaled .7, P(2, 0)); label.bot(btex 3rd etex scaled .7, P(3, 0)); label.bot(btex Crew etex scaled .7, P(4, 0)); label.lft(btex 0 etex scaled .7, P(0.5, 0)); label.lft(btex 15 etex scaled .7, P(0.5, 15)); label.lft(btex 30 etex scaled .7, P(0.5, 30)); label.lft(btex 45 etex scaled .7, P(0.5, 45)); label.lft(btex 60 etex scaled .7, P(0.5, 60)); label.lft(btex 75 etex scaled .7, P(0.5, 75)); label(btex Passenger class / crew etex scaled .8, (227.5, 13)); label(btex Age (years) etex scaled .8 rotated 90, (13, 132)); % BEGIN EXAMPLE numeric n, v[][]; n := 0; gdata("data/boxes.tsv", c, n := n + 1; for j = 1 upto 7: v[n][j] := scantokens c[j]; endfor ); for k = 1 upto n: draw P(v[k][1], v[k][2])--P(v[k][1], v[k][6]) withcolor Blue; for j = 2 step 4 until 6: draw P(v[k][1] - .15, v[k][j])--P(v[k][1] + .15, v[k][j]) withcolor Blue; endfor rect(v[k][1] - .25, v[k][3], v[k][1] + .25, v[k][5], Wash); draw P(v[k][1] - .25, v[k][3])--P(v[k][1] + .25, v[k][3])--P(v[k][1] + .25, v[k][5])--P(v[k][1] - .25, v[k][5])--cycle withcolor Blue; draw P(v[k][1] - .25, v[k][4])--P(v[k][1] + .25, v[k][4]) withcolor Blue; endfor % END EXAMPLE setbounds currentpicture to unitsquare xscaled 420 yscaled 280; endfig; end.