from pathlib import Path
import json
p=Path(__file__).parent;d=json.loads((p/'reaction-time-training-transfer-to-play.json').read_text());rows=d['records']
s='<svg xmlns="http://www.w3.org/2000/svg" width="1400" height="1200" viewBox="0 0 700 600"><rect width="700" height="600" fill="white"/><g font-family="Arial" fill="#202124"><text x="35" y="45" font-size="31">Response-time effects</text><text x="35" y="80" font-size="24">Published 2024 team-sport review</text>'
x=lambda v:65+(v+1.6)/1.8*570
for i,r in enumerate(rows):
 y=130+i*220
 s+=f'<text x="35" y="{y}" font-size="29">{r["outcome"]}</text><text x="35" y="{y+35}" font-size="24">{r["studies"]} studies; {r["participants"]} participants</text>'
 y+=85
 for v in [-1.5,-1,-.5,0]:s+=f'<line x1="{x(v)}" x2="{x(v)}" y1="{y-18}" y2="{y+18}" stroke="#ddd"/><text x="{x(v)}" y="{y+55}" text-anchor="middle" font-size="25">{v}</text>'
 s+=f'<line x1="{x(r["lower"])}" x2="{x(r["upper"])}" y1="{y}" y2="{y}" stroke="#276d46" stroke-width="5"/><circle cx="{x(r["effect"])}" cy="{y}" r="8" fill="#276d46"/>'
s+='<text x="35" y="570" font-size="24">Standardised effect; bars: 95% confidence intervals</text></g></svg>'
(p/'reaction-time-training-transfer-to-play.svg').write_text(s)
