JSFiddle - React, Tailwind, and code Playground
by niik
JavaScript
var reports = [
{'iOS':{'data':[['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['5','4','11','10','6','6','10','3','13','8','14','11','4'], ['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['0','1','0','0','0','0','0','0','0','0','0','0','3']],'labels':['07/01','07/08','07/15','07/22','07/29','08/05','08/12','08/19','08/26','09/02','09/09','09/16','09/23'],'legend':['Paid Apps', 'Free Apps', 'In Apps', 'Updates']}},
{'iOS':{'data':[['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['1','5','4','11','10','6','6','10','3','13','8','14','11'], ['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['0','0','1','0','0','0','0','0','0','0','0','0','0']],'labels':['06/24','07/01','07/08','07/15','07/22','07/29','08/05','08/12','08/19','08/26','09/02','09/09','09/16'],'legend':['Paid Apps', 'Free Apps', 'In Apps', 'Updates']}},
{'iOS':{'data':[['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['16','1','5','4','11','10','6','6','10','3','13','8','14'], ['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['0','0','0','1','0','0','0','0','0','0','0','0','0']],'labels':['06/17','06/24','07/01','07/08','07/15','07/22','07/29','08/05','08/12','08/19','08/26','09/02','09/09'],'legend':['Paid Apps', 'Free Apps', 'In Apps', 'Updates']}},
{'iOS':{'data':[['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['11','16','1','5','4','11','10','6','6','10','3','13','8'], ['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['0','0','0','0','1','0','0','0','0','0','0','0','0']],'labels':['06/10','06/17','06/24','07/01','07/08','07/15','07/22','07/29','08/05','08/12','08/19','08/26','09/02'],'legend':['Paid Apps', 'Free Apps', 'In Apps', 'Updates']}},
{'iOS':{'data':[['0','0','0','0','0','0','0','0','0','0','0','0','0'], ['18','11','16','1','5','4','11','10','6','6','10','3','13'], ['0','0','0','0','0','0','0','0','0','0','0','0','0'],...