Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save MelanieFreed/de8486bcc4755778098f to your computer and use it in GitHub Desktop.

Select an option

Save MelanieFreed/de8486bcc4755778098f to your computer and use it in GitHub Desktop.
Pedestrians vs. Cars in NYC
Year Month Ninjured Nkilled NinjuredPer1000000 NkilledPer1000000 NinjuredSI NkilledSI NinjuredPer1000000SI NkilledPer1000000SI NinjuredMN NkilledMN NinjuredPer1000000MN NkilledPer1000000MN NinjuredBK NkilledBK NinjuredPer1000000BK NkilledPer1000000BK NinjuredQN NkilledQN NinjuredPer1000000QN NkilledPer1000000QN NinjuredBX NkilledBX NinjuredPer1000000BX NkilledPer1000000BX
2012.0 7.0 764.0 5.0 89.97678622469536 0.5888533129888439 20.0 0.0 42.25837191170536 0.0 215.0 1.0 131.3965682883244 0.6111468292480204 265.0 3.0 101.07586678277042 1.1442550956540047 154.0 0.0 66.33413451184107 0.0 110.0 1.0 76.48667497821869 0.6953334088928971
2012.0 8.0 773.0 12.0 91.03672218807527 1.4132479511732254 29.0 1.0 61.27463927197277 2.112918595585268 225.0 3.0 137.5080365808046 1.8334404877440615 259.0 3.0 98.78735659146241 1.1442550956540047 158.0 2.0 68.05709904461617 0.8614822663875464 102.0 3.0 70.9240077070755 2.0860002266786912
2012.0 9.0 822.0 12.0 96.80748465536594 1.4132479511732254 23.0 0.0 48.597127698461165 0.0 223.0 6.0 136.28574292230857 3.666880975488123 277.0 3.0 105.65288716538643 1.1442550956540047 178.0 2.0 76.67192170849162 0.8614822663875464 121.0 1.0 84.13534247604055 0.6953334088928971
2012.0 10.0 885.0 11.0 104.22703639902538 1.2954772885754566 28.0 1.0 59.1617206763875 2.112918595585268 234.0 2.0 143.00835804403678 1.2222936584960409 298.0 2.0 113.66267283496447 0.7628367304360032 211.0 5.0 90.88637910388614 2.153705665968866 114.0 1.0 79.26800861379027 0.6953334088928971
2012.0 11.0 929.0 7.0 109.4089455533272 0.8243946381843815 47.0 1.0 99.30717399250759 2.112918595585268 212.0 2.0 129.56312780058033 1.2222936584960409 329.0 3.0 125.48664215672252 1.1442550956540047 211.0 1.0 90.88637910388614 0.4307411331937732 130.0 0.0 90.39334315607663 0.0
2012.0 12.0 1181.0 15.0 139.08715252796495 1.7665599389665319 54.0 0.0 114.09760416160447 0.0 281.0 3.0 171.73225901869375 1.8334404877440615 410.0 5.0 156.38152973938065 1.9070918260900078 260.0 5.0 111.99269463038104 2.153705665968866 176.0 2.0 122.37867996514989 1.3906668177857942
2013.0 1.0 996.0 20.0 117.29957994737771 2.3554132519553757 40.0 0.0 84.51674382341072 0.0 243.0 5.0 148.508679507269 3.0557341462401024 330.0 5.0 125.86806052194052 1.9070918260900078 247.0 7.0 106.39305989886198 3.0151879323564126 136.0 3.0 94.56534360943401 2.0860002266786912
2013.0 2.0 881.0 10.0 103.7559537486343 1.1777066259776878 26.0 1.0 54.93588348521696 2.112918595585268 252.0 3.0 154.00900097050118 1.8334404877440615 286.0 1.0 109.08565245234846 0.3814183652180016 180.0 4.0 77.53340397487918 1.7229645327750929 137.0 1.0 95.2606770183269 0.6953334088928971
2013.0 3.0 898.0 7.0 105.75805501279638 0.8243946381843815 22.0 0.0 46.484209102875894 0.0 225.0 1.0 137.5080365808046 0.6111468292480204 313.0 2.0 119.3839483132345 0.7628367304360032 189.0 2.0 81.41007417362313 0.8614822663875464 149.0 2.0 103.60467792504167 1.3906668177857942
2013.0 4.0 814.0 8.0 95.86531935458379 0.9421653007821503 29.0 0.0 61.27463927197277 0.0 219.0 2.0 133.8411556053165 1.2222936584960409 272.0 3.0 103.74579533929642 1.1442550956540047 161.0 3.0 69.34932244419748 1.2922233995813197 133.0 0.0 92.47934338275532 0.0
2013.0 5.0 889.0 6.0 104.69811904941645 0.7066239755866127 34.0 0.0 71.83923224989911 0.0 229.0 0.0 139.95262389779668 0.0 306.0 0.0 116.71401975670848 0.0 171.0 3.0 73.65673377613521 1.2922233995813197 149.0 3.0 103.60467792504167 2.0860002266786912
2013.0 6.0 866.0 8.0 101.98939380966777 0.9421653007821503 27.0 0.0 57.04880208080223 0.0 243.0 3.0 148.508679507269 1.8334404877440615 300.0 2.0 114.42550956540047 0.7628367304360032 165.0 0.0 71.07228697697258 0.0 131.0 3.0 91.08867656496952 2.0860002266786912
2013.0 7.0 770.0 12.0 90.68341020028197 1.4132479511732254 28.0 0.0 59.1617206763875 0.0 200.0 4.0 122.2293658496041 2.4445873169920818 277.0 4.0 105.65288716538643 1.5256734608720064 152.0 3.0 65.47265224545353 1.2922233995813197 113.0 1.0 78.57267520489738 0.6953334088928971
2013.0 8.0 775.0 11.0 91.27226351327081 1.2954772885754566 23.0 1.0 48.597127698461165 2.112918595585268 220.0 2.0 134.4523024345645 1.2222936584960409 255.0 2.0 97.2616831305904 0.7628367304360032 157.0 4.0 67.62635791142239 1.7229645327750929 120.0 2.0 83.44000906714766 1.3906668177857942
2013.0 9.0 894.0 10.0 105.2869723624053 1.1777066259776878 12.0 0.0 25.355023147023214 0.0 234.0 0.0 143.00835804403678 0.0 294.0 2.0 112.13699937409247 0.7628367304360032 213.0 6.0 91.7478613702737 2.5844467991626394 141.0 2.0 98.04201065389849 1.3906668177857942
2013.0 10.0 948.0 11.0 111.6465881426848 1.2954772885754566 30.0 0.0 63.38755786755804 0.0 226.0 1.0 138.11918341005264 0.6111468292480204 331.0 3.0 126.24947888715852 1.1442550956540047 211.0 4.0 90.88637910388614 1.7229645327750929 150.0 3.0 104.30001133393456 2.0860002266786912
2013.0 11.0 990.0 19.0 116.5929559717911 2.237642589357607 25.0 0.0 52.8229648896317 0.0 250.0 6.0 152.78670731200512 3.666880975488123 332.0 3.0 126.63089725237653 1.1442550956540047 231.0 5.0 99.50120176776161 2.153705665968866 152.0 5.0 105.69067815172036 3.4766670444644854
2013.0 12.0 1042.0 10.0 122.71703042687507 1.1777066259776878 20.0 1.0 42.25837191170536 2.112918595585268 270.0 2.0 165.00964389696554 1.2222936584960409 343.0 3.0 130.82649926977453 1.1442550956540047 248.0 4.0 106.82380103205575 1.7229645327750929 161.0 0.0 111.94867883175644 0.0
2014.0 1.0 977.0 11.0 115.0619373580201 1.2954772885754566 31.0 1.0 65.5004764631433 2.112918595585268 266.0 3.0 162.56505657997346 1.8334404877440615 318.0 3.0 121.2910401393245 1.1442550956540047 229.0 1.0 98.63971950137406 0.4307411331937732 133.0 3.0 92.47934338275532 2.0860002266786912
2014.0 2.0 709.0 6.0 83.49939978181807 0.7066239755866127 22.0 0.0 46.484209102875894 0.0 238.0 0.0 145.45294536102887 0.0 199.0 5.0 75.90225467838232 1.9070918260900078 154.0 1.0 66.33413451184107 0.4307411331937732 96.0 0.0 66.75200725371812 0.0
2014.0 3.0 834.0 8.0 98.22073260653917 0.9421653007821503 23.0 0.0 48.597127698461165 0.0 215.0 1.0 131.3965682883244 0.6111468292480204 282.0 3.0 107.55997899147644 1.1442550956540047 186.0 3.0 80.11785077404181 1.2922233995813197 128.0 1.0 89.00267633829083 0.6953334088928971
2014.0 4.0 787.0 7.0 92.68551146444403 0.8243946381843815 25.0 0.0 52.8229648896317 0.0 210.0 2.0 128.3408341420843 1.2222936584960409 270.0 2.0 102.98295860886043 0.7628367304360032 154.0 2.0 66.33413451184107 0.8614822663875464 128.0 1.0 89.00267633829083 0.6953334088928971
2014.0 5.0 799.0 8.0 94.09875941561727 0.9421653007821503 15.0 0.0 31.69377893377902 0.0 209.0 2.0 127.72968731283629 1.2222936584960409 277.0 3.0 105.65288716538643 1.1442550956540047 166.0 3.0 71.50302811016635 1.2922233995813197 132.0 0.0 91.78400997386241 0.0
2014.0 6.0 863.0 6.0 101.63608182187447 0.7066239755866127 19.0 1.0 40.14545331612009 2.112918595585268 207.0 0.0 126.50739365434025 0.0 314.0 4.0 119.7653666784525 1.5256734608720064 182.0 1.0 78.39488624126672 0.4307411331937732 141.0 0.0 98.04201065389849 0.0
2014.0 7.0 694.0 13.0 81.73283984285153 1.5310186137709942 11.0 2.0 23.242104551437947 4.225837191170536 182.0 2.0 111.22872292313973 1.2222936584960409 231.0 6.0 88.10764236535836 2.2885101913080095 144.0 3.0 62.02672317990334 1.2922233995813197 126.0 0.0 87.61200952050504 0.0
2014.0 8.0 659.0 8.0 77.61086665192963 0.9421653007821503 12.0 0.0 25.355023147023214 0.0 194.0 2.0 118.56248487411598 1.2222936584960409 227.0 2.0 86.58196890448636 0.7628367304360032 138.0 3.0 59.4422763807407 1.2922233995813197 88.0 1.0 61.18933998257494 0.6953334088928971
2014.0 9.0 663.0 11.0 78.08194930232071 1.2954772885754566 12.0 0.0 25.355023147023214 0.0 165.0 6.0 100.83922682592338 3.666880975488123 245.0 3.0 93.44749947841038 1.1442550956540047 140.0 1.0 60.30375864712825 0.4307411331937732 101.0 1.0 70.22867429818261 0.6953334088928971
2014.0 10.0 878.0 12.0 103.402641760841 1.4132479511732254 16.0 0.0 33.806697529364286 0.0 220.0 3.0 134.4523024345645 1.8334404877440615 303.0 4.0 115.56976466105448 1.5256734608720064 199.0 3.0 85.71748550556087 1.2922233995813197 140.0 2.0 97.3466772450056 1.3906668177857942
2014.0 11.0 916.0 9.0 107.8779269395562 1.059935963379919 23.0 1.0 48.597127698461165 2.112918595585268 230.0 2.0 140.56377072704473 1.2222936584960409 293.0 2.0 111.75558100887446 0.7628367304360032 237.0 3.0 102.08564856692425 1.2922233995813197 133.0 1.0 92.47934338275532 0.6953334088928971
2014.0 12.0 1072.0 9.0 126.25015030480814 1.059935963379919 20.0 0.0 42.25837191170536 0.0 246.0 2.0 150.34211999501304 1.2222936584960409 386.0 5.0 147.2274889741486 1.9070918260900078 261.0 2.0 112.4234357635748 0.8614822663875464 159.0 0.0 110.55801201397064 0.0
2015.0 1.0 799.0 8.0 94.09875941561727 0.9421653007821503 21.0 0.0 44.371290507290624 0.0 190.0 4.0 116.1178975571239 2.4445873169920818 288.0 1.0 109.84848918278445 0.3814183652180016 184.0 2.0 79.25636850765427 0.8614822663875464 116.0 1.0 80.65867543157606 0.6953334088928971
2015.0 2.0 601.0 9.0 70.78016822125905 1.059935963379919 22.0 0.0 46.484209102875894 0.0 184.0 1.0 112.45101658163577 0.6111468292480204 210.0 4.0 80.09785669578034 1.5256734608720064 101.0 4.0 43.504854452571095 1.7229645327750929 84.0 0.0 58.40800634700336 0.0
2015.0 3.0 708.0 4.0 83.3816291192203 0.47108265039107516 16.0 0.0 33.806697529364286 0.0 197.0 1.0 120.39592536186004 0.6111468292480204 232.0 1.0 88.48906073057637 0.3814183652180016 158.0 0.0 68.05709904461617 0.0 105.0 2.0 73.0100079337542 1.3906668177857942
Month Hour NightDay Ninjuredkilled NinjuredkilledPer1000000 NinjuredkilledSI NinjuredkilledPer1000000SI NinjuredkilledMN NinjuredkilledPer1000000MN NinjuredkilledBK NinjuredkilledPer1000000BK NinjuredkilledQN NinjuredkilledPer1000000QN NinjuredkilledBX NinjuredkilledPer1000000BX
4.0 19.0 4.0 38.0 4.475285178715214 2.3333333333333335 4.930143389698959 11.333333333333334 6.926330731477566 10.666666666666666 4.06846256232535 9.0 3.876670198743959 4.666666666666667 3.2448892415001866
4.0 15.0 4.0 39.666666666666664 4.671569616378162 1.3333333333333333 2.8172247941136903 9.666666666666666 5.907752682730864 13.666666666666666 5.212717657979355 7.0 3.0151879323564126 8.0 5.562667271143177
4.0 17.0 4.0 31.333333333333332 3.6901474280634217 1.3333333333333333 2.8172247941136903 8.333333333333334 5.092890243733504 10.666666666666666 4.06846256232535 6.333333333333333 2.728027176893897 4.666666666666667 3.2448892415001866
4.0 0.0 0.0 12.333333333333334 1.452504838705815 0.0 0.0 4.333333333333333 2.648302926741422 4.0 1.5256734608720064 2.0 0.8614822663875464 2.0 1.3906668177857942
4.0 16.0 4.0 39.666666666666664 4.671569616378162 1.6666666666666667 3.5215309926421132 6.666666666666667 4.0743121949868035 15.0 5.721275478270024 8.666666666666666 3.733089821012701 7.666666666666667 5.330889468178878
4.0 14.0 4.0 36.0 4.239743853519676 1.6666666666666667 3.5215309926421132 7.0 4.278027804736143 12.333333333333334 4.704159837688686 8.666666666666666 3.733089821012701 6.333333333333333 4.403778256321681
4.0 12.0 4.0 23.666666666666668 2.7872390148138613 1.0 2.112918595585268 9.333333333333334 5.704037072981525 7.666666666666667 2.9242074666713456 2.6666666666666665 1.1486430218500618 3.0 2.0860002266786912
4.0 9.0 4.0 23.666666666666668 2.7872390148138613 0.6666666666666666 1.4086123970568452 5.333333333333333 3.2594497559894426 10.333333333333334 3.9413231072526833 5.333333333333333 2.2972860437001237 2.0 1.3906668177857942
4.0 11.0 4.0 23.333333333333332 2.7479821272812717 0.6666666666666666 1.4086123970568452 9.333333333333334 5.704037072981525 6.333333333333333 2.4156496463806767 4.0 1.7229645327750929 3.0 2.0860002266786912
4.0 13.0 4.0 31.666666666666668 3.7294043155960117 0.6666666666666666 1.4086123970568452 9.333333333333334 5.704037072981525 10.333333333333334 3.9413231072526833 6.333333333333333 2.728027176893897 5.0 3.4766670444644854
4.0 8.0 4.0 32.0 3.7686612031286013 1.0 2.112918595585268 6.0 3.666880975488123 11.333333333333334 4.3227414724706845 9.333333333333334 4.020250576475217 4.333333333333333 3.013111438535887
4.0 10.0 4.0 24.333333333333332 2.8657527898790405 1.0 2.112918595585268 7.666666666666667 4.685459024234824 7.666666666666667 2.9242074666713456 5.0 2.153705665968866 3.0 2.0860002266786912
4.0 7.0 4.0 21.333333333333332 2.512440802085734 0.3333333333333333 0.7043061985284226 4.666666666666667 2.8520185364907626 8.0 3.051346921744013 5.0 2.153705665968866 3.3333333333333335 2.3177780296429904
4.0 6.0 4.0 6.333333333333333 0.7458808631192023 0.3333333333333333 0.7043061985284226 2.6666666666666665 1.6297248779947213 2.0 0.7628367304360032 1.0 0.4307411331937732 0.3333333333333333 0.231777802964299
4.0 5.0 2.0 6.666666666666667 0.7851377506517919 0.0 0.0 2.0 1.2222936584960409 3.0 1.1442550956540047 0.3333333333333333 0.14358037773125773 1.3333333333333333 0.927111211857196
4.0 4.0 0.0 5.333333333333333 0.6281102005214335 0.0 0.0 2.0 1.2222936584960409 1.0 0.3814183652180016 1.3333333333333333 0.5743215109250309 1.0 0.6953334088928971
4.0 3.0 0.0 3.6666666666666665 0.43182576285848556 0.0 0.0 1.3333333333333333 0.8148624389973607 1.6666666666666667 0.635697275363336 0.6666666666666666 0.28716075546251546 0.0 0.0
4.0 2.0 0.0 4.666666666666667 0.5495964254562544 0.3333333333333333 0.7043061985284226 2.3333333333333335 1.4260092682453813 0.6666666666666666 0.2542789101453344 1.0 0.4307411331937732 0.3333333333333333 0.231777802964299
4.0 23.0 0.0 16.333333333333332 1.92358748909689 0.3333333333333333 0.7043061985284226 5.0 3.0557341462401024 5.0 1.9070918260900078 2.6666666666666665 1.1486430218500618 3.3333333333333335 2.3177780296429904
4.0 22.0 0.0 18.666666666666668 2.1983857018250177 0.0 0.0 5.333333333333333 3.2594497559894426 6.0 2.2885101913080095 4.333333333333333 1.8665449105063505 3.0 2.0860002266786912
4.0 21.0 0.0 27.0 3.1798078901397573 1.3333333333333333 2.8172247941136903 7.666666666666667 4.685459024234824 8.0 3.051346921744013 4.666666666666667 2.0101252882376084 5.333333333333333 3.708444847428784
4.0 20.0 0.0 38.0 4.475285178715214 1.0 2.112918595585268 10.333333333333334 6.3151839022295455 13.666666666666666 5.212717657979355 5.333333333333333 2.2972860437001237 7.666666666666667 5.330889468178878
4.0 1.0 0.0 3.3333333333333335 0.39256887532589596 0.0 0.0 1.0 0.6111468292480204 1.0 0.3814183652180016 0.3333333333333333 0.14358037773125773 1.0 0.6953334088928971
4.0 18.0 4.0 31.666666666666668 3.7294043155960117 1.0 2.112918595585268 5.666666666666667 3.463165365738783 12.333333333333334 4.704159837688686 5.666666666666667 2.4408664214313815 7.0 4.8673338622502795
3.0 17.0 4.0 34.333333333333336 4.043459415856729 1.3333333333333333 2.8172247941136903 7.0 4.278027804736143 12.333333333333334 4.704159837688686 8.0 3.4459290655501857 5.666666666666667 3.9402226503930837
3.0 10.0 4.0 24.0 2.826495902346451 0.3333333333333333 0.7043061985284226 8.333333333333334 5.092890243733504 6.333333333333333 2.4156496463806767 7.333333333333333 3.15876831008767 1.6666666666666667 1.1588890148214952
3.0 8.0 4.0 29.666666666666668 3.493862990400474 1.0 2.112918595585268 5.0 3.0557341462401024 10.0 3.8141836521800156 8.0 3.4459290655501857 5.666666666666667 3.9402226503930837
3.0 12.0 4.0 22.333333333333332 2.630211464683503 1.0 2.112918595585268 6.333333333333333 3.870596585237463 7.666666666666667 2.9242074666713456 5.0 2.153705665968866 2.3333333333333335 1.6224446207500933
3.0 13.0 4.0 25.333333333333332 2.9835234524768093 0.6666666666666666 1.4086123970568452 8.0 4.8891746339841635 9.0 3.432765286962014 4.333333333333333 1.8665449105063505 3.3333333333333335 2.3177780296429904
3.0 14.0 4.0 33.0 3.88643186572637 2.0 4.225837191170536 6.0 3.666880975488123 12.666666666666666 4.831299292761353 7.666666666666667 3.302348687818928 4.666666666666667 3.2448892415001866
3.0 5.0 0.0 6.333333333333333 0.7458808631192023 0.0 0.0 3.0 1.8334404877440615 1.0 0.3814183652180016 1.0 0.4307411331937732 1.3333333333333333 0.927111211857196
3.0 23.0 0.0 19.666666666666668 2.3161563644227865 0.0 0.0 4.333333333333333 2.648302926741422 8.666666666666666 3.3056258318893468 3.3333333333333335 1.4358037773125774 3.3333333333333335 2.3177780296429904
3.0 22.0 0.0 24.666666666666668 2.90500967741163 0.0 0.0 6.333333333333333 3.870596585237463 10.666666666666666 4.06846256232535 5.333333333333333 2.2972860437001237 2.3333333333333335 1.6224446207500933
3.0 15.0 4.0 47.333333333333336 5.5744780296277225 1.6666666666666667 3.5215309926421132 11.333333333333334 6.926330731477566 15.333333333333334 5.848414933342691 9.0 3.876670198743959 10.0 6.953334088928971
3.0 16.0 4.0 38.333333333333336 4.514542066247804 0.6666666666666666 1.4086123970568452 11.0 6.722615121728225 10.666666666666666 4.06846256232535 9.666666666666666 4.163830954206474 6.333333333333333 4.403778256321681
3.0 20.0 0.0 42.0 4.946367829106289 0.6666666666666666 1.4086123970568452 9.0 5.500321463232185 14.333333333333334 5.4669965681246895 10.666666666666666 4.594572087400247 7.333333333333333 5.099111665214578
3.0 18.0 4.0 40.666666666666664 4.7893402789759305 0.3333333333333333 0.7043061985284226 10.0 6.111468292480205 15.333333333333334 5.848414933342691 10.666666666666666 4.594572087400247 4.333333333333333 3.013111438535887
3.0 19.0 3.0 48.0 5.652991804692902 2.0 4.225837191170536 11.666666666666666 7.1300463412269055 15.666666666666666 5.9755543884153575 10.0 4.307411331937732 8.666666666666666 6.026222877071774
3.0 1.0 0.0 8.0 0.9421653007821503 0.3333333333333333 0.7043061985284226 3.3333333333333335 2.0371560974934018 3.0 1.1442550956540047 0.6666666666666666 0.28716075546251546 0.6666666666666666 0.463555605928598
3.0 21.0 0.0 34.0 4.0042025283241385 0.3333333333333333 0.7043061985284226 9.333333333333334 5.704037072981525 13.666666666666666 5.212717657979355 5.0 2.153705665968866 5.666666666666667 3.9402226503930837
3.0 2.0 0.0 8.333333333333334 0.9814221883147399 0.0 0.0 1.6666666666666667 1.0185780487467009 2.6666666666666665 1.0171156405813375 1.6666666666666667 0.7179018886562887 2.3333333333333335 1.6224446207500933
3.0 3.0 0.0 2.0 0.23554132519553758 0.0 0.0 1.0 0.6111468292480204 0.6666666666666666 0.2542789101453344 0.0 0.0 0.3333333333333333 0.231777802964299
3.0 4.0 0.0 5.666666666666667 0.6673670880540231 0.0 0.0 2.6666666666666665 1.6297248779947213 1.3333333333333333 0.5085578202906688 0.3333333333333333 0.14358037773125773 1.3333333333333333 0.927111211857196
3.0 6.0 2.0 10.666666666666666 1.256220401042867 0.6666666666666666 1.4086123970568452 3.0 1.8334404877440615 3.6666666666666665 1.398534005799339 2.0 0.8614822663875464 1.3333333333333333 0.927111211857196
3.0 7.0 4.0 17.333333333333332 2.041358151694659 1.0 2.112918595585268 2.0 1.2222936584960409 7.0 2.669928556526011 2.6666666666666665 1.1486430218500618 4.666666666666667 3.2448892415001866
3.0 9.0 4.0 24.0 2.826495902346451 0.3333333333333333 0.7043061985284226 5.333333333333333 3.2594497559894426 9.0 3.432765286962014 5.666666666666667 2.4408664214313815 3.6666666666666665 2.549555832607289
3.0 11.0 4.0 21.0 2.4731839145531445 0.3333333333333333 0.7043061985284226 7.666666666666667 4.685459024234824 4.666666666666667 1.7799523710173408 5.0 2.153705665968866 3.3333333333333335 2.3177780296429904
3.0 0.0 0.0 15.666666666666666 1.8450737140317108 0.3333333333333333 0.7043061985284226 4.0 2.4445873169920818 4.666666666666667 1.7799523710173408 3.6666666666666665 1.579384155043835 3.0 2.0860002266786912
2.0 11.0 4.0 24.0 2.826495902346451 1.3333333333333333 2.8172247941136903 7.333333333333333 4.481743414485483 6.666666666666667 2.542789101453344 5.333333333333333 2.2972860437001237 3.3333333333333335 2.3177780296429904
2.0 18.0 2.0 46.333333333333336 5.456707367029954 1.3333333333333333 2.8172247941136903 14.666666666666666 8.963486828970966 12.0 4.577020382616019 10.666666666666666 4.594572087400247 7.666666666666667 5.330889468178878
2.0 22.0 0.0 20.0 2.3554132519553757 0.6666666666666666 1.4086123970568452 5.0 3.0557341462401024 7.333333333333333 2.797068011598678 5.666666666666667 2.4408664214313815 1.3333333333333333 0.927111211857196
2.0 12.0 4.0 23.0 2.708725239748682 1.0 2.112918595585268 7.333333333333333 4.481743414485483 5.0 1.9070918260900078 6.333333333333333 2.728027176893897 3.3333333333333335 2.3177780296429904
2.0 4.0 0.0 5.0 0.5888533129888439 0.0 0.0 2.6666666666666665 1.6297248779947213 1.6666666666666667 0.635697275363336 0.6666666666666666 0.28716075546251546 0.0 0.0
2.0 8.0 4.0 42.0 4.946367829106289 1.0 2.112918595585268 10.333333333333334 6.3151839022295455 15.333333333333334 5.848414933342691 10.666666666666666 4.594572087400247 4.666666666666667 3.2448892415001866
2.0 13.0 4.0 21.0 2.4731839145531445 2.0 4.225837191170536 5.333333333333333 3.2594497559894426 6.333333333333333 2.4156496463806767 5.333333333333333 2.2972860437001237 2.0 1.3906668177857942
2.0 0.0 0.0 11.333333333333334 1.3347341761080462 0.3333333333333333 0.7043061985284226 5.333333333333333 3.2594497559894426 3.0 1.1442550956540047 1.3333333333333333 0.5743215109250309 1.3333333333333333 0.927111211857196
2.0 20.0 0.0 33.0 3.88643186572637 0.0 0.0 10.0 6.111468292480205 11.0 4.195602017398017 6.0 2.5844467991626394 6.0 4.1720004533573825
2.0 9.0 4.0 29.333333333333332 3.4546061028678845 0.6666666666666666 1.4086123970568452 7.0 4.278027804736143 12.0 4.577020382616019 6.666666666666667 2.8716075546251547 3.0 2.0860002266786912
2.0 5.0 1.0 5.0 0.5888533129888439 0.0 0.0 3.3333333333333335 2.0371560974934018 1.3333333333333333 0.5085578202906688 0.3333333333333333 0.14358037773125773 0.0 0.0
2.0 10.0 4.0 22.666666666666668 2.6694683522160925 0.3333333333333333 0.7043061985284226 7.666666666666667 4.685459024234824 6.666666666666667 2.542789101453344 2.3333333333333335 1.0050626441188042 5.666666666666667 3.9402226503930837
2.0 6.0 3.0 16.666666666666668 1.9628443766294799 0.3333333333333333 0.7043061985284226 4.0 2.4445873169920818 4.0 1.5256734608720064 5.0 2.153705665968866 3.3333333333333335 2.3177780296429904
2.0 19.0 0.0 38.666666666666664 4.553798953780393 1.3333333333333333 2.8172247941136903 8.333333333333334 5.092890243733504 14.666666666666666 5.594136023197356 8.333333333333334 3.5895094432814436 6.0 4.1720004533573825
2.0 7.0 4.0 16.0 1.8843306015643007 0.6666666666666666 1.4086123970568452 3.6666666666666665 2.2408717072427415 4.666666666666667 1.7799523710173408 3.3333333333333335 1.4358037773125774 3.6666666666666665 2.549555832607289
2.0 14.0 4.0 32.666666666666664 3.84717497819378 0.6666666666666666 1.4086123970568452 11.333333333333334 6.926330731477566 10.0 3.8141836521800156 6.333333333333333 2.728027176893897 4.333333333333333 3.013111438535887
2.0 2.0 0.0 3.6666666666666665 0.43182576285848556 0.0 0.0 1.6666666666666667 1.0185780487467009 1.0 0.3814183652180016 1.0 0.4307411331937732 0.0 0.0
2.0 3.0 0.0 3.3333333333333335 0.39256887532589596 0.0 0.0 2.0 1.2222936584960409 0.6666666666666666 0.2542789101453344 0.0 0.0 0.6666666666666666 0.463555605928598
2.0 1.0 0.0 8.333333333333334 0.9814221883147399 0.0 0.0 5.333333333333333 3.2594497559894426 1.6666666666666667 0.635697275363336 0.3333333333333333 0.14358037773125773 1.0 0.6953334088928971
2.0 23.0 0.0 14.666666666666666 1.7273030514339422 0.3333333333333333 0.7043061985284226 6.666666666666667 4.0743121949868035 3.6666666666666665 1.398534005799339 3.0 1.2922233995813197 1.0 0.6953334088928971
2.0 21.0 0.0 27.0 3.1798078901397573 1.3333333333333333 2.8172247941136903 10.666666666666666 6.518899511978885 7.0 2.669928556526011 3.3333333333333335 1.4358037773125774 4.666666666666667 3.2448892415001866
2.0 15.0 4.0 31.0 3.6508905405308325 1.6666666666666667 3.5215309926421132 8.333333333333334 5.092890243733504 9.333333333333334 3.5599047420346817 5.666666666666667 2.4408664214313815 6.0 4.1720004533573825
2.0 16.0 4.0 35.0 4.121973190921907 1.0 2.112918595585268 9.666666666666666 5.907752682730864 11.0 4.195602017398017 7.0 3.0151879323564126 6.333333333333333 4.403778256321681
2.0 17.0 4.0 25.666666666666668 3.022780340009399 0.3333333333333333 0.7043061985284226 6.666666666666667 4.0743121949868035 7.666666666666667 2.9242074666713456 8.333333333333334 3.5895094432814436 2.6666666666666665 1.854222423714392
1.0 10.0 4.0 24.666666666666668 2.90500967741163 1.0 2.112918595585268 6.666666666666667 4.0743121949868035 7.666666666666667 2.9242074666713456 4.666666666666667 2.0101252882376084 4.666666666666667 3.2448892415001866
1.0 16.0 4.0 39.666666666666664 4.671569616378162 1.6666666666666667 3.5215309926421132 10.0 6.111468292480205 12.666666666666666 4.831299292761353 7.666666666666667 3.302348687818928 7.666666666666667 5.330889468178878
1.0 17.0 2.0 62.0 7.301781081061665 2.3333333333333335 4.930143389698959 13.333333333333334 8.148624389973607 19.0 7.24694893914203 16.333333333333332 7.0354385088316285 11.0 7.648667497821868
1.0 11.0 4.0 25.666666666666668 3.022780340009399 0.6666666666666666 1.4086123970568452 5.333333333333333 3.2594497559894426 10.666666666666666 4.06846256232535 7.666666666666667 3.302348687818928 1.3333333333333333 0.927111211857196
1.0 20.0 0.0 36.333333333333336 4.279000741052267 0.3333333333333333 0.7043061985284226 8.0 4.8891746339841635 13.666666666666666 5.212717657979355 9.0 3.876670198743959 5.333333333333333 3.708444847428784
1.0 22.0 0.0 17.0 2.0021012641620692 0.0 0.0 6.333333333333333 3.870596585237463 4.333333333333333 1.6528129159446734 5.666666666666667 2.4408664214313815 0.6666666666666666 0.463555605928598
1.0 23.0 0.0 14.0 1.648789276368763 0.3333333333333333 0.7043061985284226 5.666666666666667 3.463165365738783 3.6666666666666665 1.398534005799339 3.3333333333333335 1.4358037773125774 1.0 0.6953334088928971
1.0 2.0 0.0 7.333333333333333 0.8636515257169711 0.6666666666666666 1.4086123970568452 3.6666666666666665 2.2408717072427415 1.3333333333333333 0.5085578202906688 1.0 0.4307411331937732 0.6666666666666666 0.463555605928598
1.0 13.0 4.0 27.0 3.1798078901397573 0.3333333333333333 0.7043061985284226 8.666666666666666 5.296605853482844 8.333333333333334 3.17848637681668 6.666666666666667 2.8716075546251547 3.0 2.0860002266786912
1.0 5.0 0.0 4.666666666666667 0.5495964254562544 0.0 0.0 0.6666666666666666 0.40743121949868033 1.0 0.3814183652180016 3.0 1.2922233995813197 0.0 0.0
1.0 6.0 2.0 25.333333333333332 2.9835234524768093 0.6666666666666666 1.4086123970568452 7.333333333333333 4.481743414485483 8.0 3.051346921744013 5.666666666666667 2.4408664214313815 3.6666666666666665 2.549555832607289
1.0 7.0 4.0 26.666666666666668 3.1405510026071677 1.3333333333333333 2.8172247941136903 4.0 2.4445873169920818 11.0 4.195602017398017 6.333333333333333 2.728027176893897 4.0 2.7813336355715883
1.0 8.0 4.0 36.666666666666664 4.318257628584855 1.3333333333333333 2.8172247941136903 9.666666666666666 5.907752682730864 8.333333333333334 3.17848637681668 10.333333333333334 4.45099170966899 7.0 4.8673338622502795
1.0 9.0 4.0 27.0 3.1798078901397573 0.0 0.0 7.0 4.278027804736143 10.0 3.8141836521800156 6.0 2.5844467991626394 4.0 2.7813336355715883
1.0 12.0 4.0 30.0 3.5331198779330637 0.3333333333333333 0.7043061985284226 9.0 5.500321463232185 8.0 3.051346921744013 7.333333333333333 3.15876831008767 5.333333333333333 3.708444847428784
1.0 14.0 4.0 43.666666666666664 5.142652266769237 2.6666666666666665 5.634449588227381 13.666666666666666 8.352339999722947 14.333333333333334 5.4669965681246895 8.0 3.4459290655501857 5.0 3.4766670444644854
1.0 0.0 0.0 11.666666666666666 1.3739910636406358 0.3333333333333333 0.7043061985284226 4.333333333333333 2.648302926741422 3.0 1.1442550956540047 2.3333333333333335 1.0050626441188042 1.6666666666666667 1.1588890148214952
1.0 15.0 4.0 37.666666666666664 4.436028291182624 1.0 2.112918595585268 7.333333333333333 4.481743414485483 14.0 5.339857113052022 9.333333333333334 4.020250576475217 6.0 4.1720004533573825
1.0 4.0 0.0 6.0 0.7066239755866127 0.0 0.0 3.3333333333333335 2.0371560974934018 0.6666666666666666 0.2542789101453344 1.3333333333333333 0.5743215109250309 0.6666666666666666 0.463555605928598
1.0 3.0 0.0 3.3333333333333335 0.39256887532589596 0.0 0.0 1.0 0.6111468292480204 1.3333333333333333 0.5085578202906688 0.6666666666666666 0.28716075546251546 0.3333333333333333 0.231777802964299
1.0 21.0 0.0 28.0 3.297578552737526 0.6666666666666666 1.4086123970568452 5.666666666666667 3.463165365738783 13.333333333333334 5.085578202906688 5.666666666666667 2.4408664214313815 2.6666666666666665 1.854222423714392
1.0 19.0 0.0 51.333333333333336 6.045560680018798 2.6666666666666665 5.634449588227381 14.333333333333334 8.759771219221628 16.666666666666668 6.35697275363336 11.666666666666666 5.02531322059402 6.0 4.1720004533573825
1.0 18.0 0.0 75.66666666666667 8.91131346989784 5.666666666666667 11.973205374983186 14.666666666666666 8.963486828970966 26.0 9.916877495668041 20.333333333333332 8.758403041606721 9.0 6.258000680036074
1.0 1.0 0.0 6.666666666666667 0.7851377506517919 0.0 0.0 2.6666666666666665 1.6297248779947213 1.6666666666666667 0.635697275363336 1.3333333333333333 0.5743215109250309 1.0 0.6953334088928971
12.0 15.0 4.0 33.0 3.88643186572637 0.3333333333333333 0.7043061985284226 7.666666666666667 4.685459024234824 11.333333333333334 4.3227414724706845 7.666666666666667 3.302348687818928 6.0 4.1720004533573825
12.0 11.0 4.0 26.333333333333332 3.101294115074578 0.3333333333333333 0.7043061985284226 6.333333333333333 3.870596585237463 11.333333333333334 4.3227414724706845 5.0 2.153705665968866 3.3333333333333335 2.3177780296429904
12.0 10.0 4.0 21.666666666666668 2.5516976896183237 0.3333333333333333 0.7043061985284226 5.333333333333333 3.2594497559894426 8.666666666666666 3.3056258318893468 5.333333333333333 2.2972860437001237 2.0 1.3906668177857942
12.0 12.0 4.0 30.0 3.5331198779330637 0.0 0.0 9.666666666666666 5.907752682730864 10.666666666666666 4.06846256232535 5.666666666666667 2.4408664214313815 4.0 2.7813336355715883
12.0 23.0 0.0 17.666666666666668 2.080615039227249 0.3333333333333333 0.7043061985284226 5.666666666666667 3.463165365738783 6.333333333333333 2.4156496463806767 3.3333333333333335 1.4358037773125774 2.0 1.3906668177857942
12.0 18.0 0.0 73.66666666666667 8.675772144702302 1.0 2.112918595585268 18.666666666666668 11.40807414596305 22.666666666666668 8.645482944941369 22.0 9.47630493026301 9.333333333333334 6.489778483000373
12.0 17.0 2.0 87.0 10.246047646005884 3.0 6.3387557867558035 20.0 12.22293658496041 33.0 12.586806052194053 17.666666666666668 7.609760019756661 13.333333333333334 9.271112118571962
12.0 4.0 0.0 5.0 0.5888533129888439 0.0 0.0 2.6666666666666665 1.6297248779947213 1.3333333333333333 0.5085578202906688 0.3333333333333333 0.14358037773125773 0.6666666666666666 0.463555605928598
12.0 7.0 4.0 19.333333333333332 2.2768994768901964 0.0 0.0 2.0 1.2222936584960409 7.666666666666667 2.9242074666713456 7.666666666666667 3.302348687818928 2.0 1.3906668177857942
12.0 0.0 0.0 15.333333333333334 1.8058168264991215 0.0 0.0 3.3333333333333335 2.0371560974934018 5.0 1.9070918260900078 5.0 2.153705665968866 2.0 1.3906668177857942
12.0 16.0 3.0 37.333333333333336 4.396771403650035 0.3333333333333333 0.7043061985284226 9.0 5.500321463232185 12.0 4.577020382616019 8.0 3.4459290655501857 8.0 5.562667271143177
12.0 13.0 4.0 32.0 3.7686612031286013 1.0 2.112918595585268 8.666666666666666 5.296605853482844 7.0 2.669928556526011 8.666666666666666 3.733089821012701 6.666666666666667 4.635556059285981
12.0 8.0 4.0 29.333333333333332 3.4546061028678845 0.6666666666666666 1.4086123970568452 4.0 2.4445873169920818 10.666666666666666 4.06846256232535 8.0 3.4459290655501857 6.0 4.1720004533573825
12.0 14.0 4.0 35.0 4.121973190921907 1.0 2.112918595585268 7.333333333333333 4.481743414485483 14.333333333333334 5.4669965681246895 7.0 3.0151879323564126 5.333333333333333 3.708444847428784
12.0 19.0 0.0 59.666666666666664 7.026982868333538 1.0 2.112918595585268 14.0 8.556055609472287 20.0 7.628367304360031 17.666666666666668 7.609760019756661 7.0 4.8673338622502795
12.0 3.0 0.0 6.666666666666667 0.7851377506517919 0.0 0.0 3.3333333333333335 2.0371560974934018 1.6666666666666667 0.635697275363336 1.3333333333333333 0.5743215109250309 0.3333333333333333 0.231777802964299
12.0 9.0 4.0 26.0 3.0620372275419885 0.3333333333333333 0.7043061985284226 8.333333333333334 5.092890243733504 9.333333333333334 3.5599047420346817 2.6666666666666665 1.1486430218500618 5.333333333333333 3.708444847428784
12.0 20.0 0.0 51.0 6.006303792486208 1.3333333333333333 2.8172247941136903 11.0 6.722615121728225 18.666666666666668 7.119809484069363 12.0 5.168893598325279 8.0 5.562667271143177
12.0 21.0 0.0 38.0 4.475285178715214 0.6666666666666666 1.4086123970568452 10.333333333333334 6.3151839022295455 13.333333333333334 5.085578202906688 8.666666666666666 3.733089821012701 5.0 3.4766670444644854
12.0 22.0 0.0 24.0 2.826495902346451 1.6666666666666667 3.5215309926421132 5.333333333333333 3.2594497559894426 7.333333333333333 2.797068011598678 4.666666666666667 2.0101252882376084 5.0 3.4766670444644854
12.0 2.0 0.0 4.333333333333333 0.5103395379236647 0.3333333333333333 0.7043061985284226 2.3333333333333335 1.4260092682453813 0.0 0.0 1.3333333333333333 0.5743215109250309 0.3333333333333333 0.231777802964299
12.0 5.0 0.0 9.666666666666666 1.1384497384450982 0.0 0.0 2.0 1.2222936584960409 3.0 1.1442550956540047 3.6666666666666665 1.579384155043835 1.0 0.6953334088928971
12.0 1.0 0.0 5.666666666666667 0.6673670880540231 0.0 0.0 1.6666666666666667 1.0185780487467009 1.0 0.3814183652180016 1.0 0.4307411331937732 2.0 1.3906668177857942
12.0 6.0 2.0 23.333333333333332 2.7479821272812717 0.0 0.0 4.666666666666667 2.8520185364907626 9.333333333333334 3.5599047420346817 7.333333333333333 3.15876831008767 2.0 1.3906668177857942
11.0 4.0 0.0 7.0 0.8243946381843815 0.0 0.0 2.3333333333333335 1.4260092682453813 1.3333333333333333 0.5085578202906688 2.0 0.8614822663875464 1.3333333333333333 0.927111211857196
11.0 8.0 4.0 34.0 4.0042025283241385 0.3333333333333333 0.7043061985284226 4.333333333333333 2.648302926741422 10.0 3.8141836521800156 10.333333333333334 4.45099170966899 9.0 6.258000680036074
11.0 17.0 2.0 71.33333333333333 8.400973931974173 2.0 4.225837191170536 17.0 10.389496097216348 19.0 7.24694893914203 22.333333333333332 9.619885307994268 11.0 7.648667497821868
11.0 9.0 4.0 26.666666666666668 3.1405510026071677 0.3333333333333333 0.7043061985284226 8.0 4.8891746339841635 9.666666666666666 3.6870441971073484 5.666666666666667 2.4408664214313815 3.0 2.0860002266786912
11.0 2.0 0.0 5.666666666666667 0.6673670880540231 0.0 0.0 3.0 1.8334404877440615 1.3333333333333333 0.5085578202906688 0.6666666666666666 0.28716075546251546 0.6666666666666666 0.463555605928598
11.0 20.0 0.0 44.333333333333336 5.221166041834416 1.3333333333333333 2.8172247941136903 10.333333333333334 6.3151839022295455 14.666666666666666 5.594136023197356 12.333333333333334 5.312473976056537 5.666666666666667 3.9402226503930837
11.0 21.0 0.0 24.333333333333332 2.8657527898790405 0.6666666666666666 1.4086123970568452 6.0 3.666880975488123 9.0 3.432765286962014 5.666666666666667 2.4408664214313815 3.0 2.0860002266786912
11.0 7.0 4.0 20.666666666666668 2.4339270270205553 1.6666666666666667 3.5215309926421132 5.0 3.0557341462401024 5.333333333333333 2.034231281162675 5.666666666666667 2.4408664214313815 3.0 2.0860002266786912
11.0 11.0 4.0 27.333333333333332 3.219064777672347 0.0 0.0 8.666666666666666 5.296605853482844 7.0 2.669928556526011 6.333333333333333 2.728027176893897 5.333333333333333 3.708444847428784
11.0 12.0 4.0 28.666666666666668 3.3760923278027053 0.0 0.0 6.333333333333333 3.870596585237463 11.0 4.195602017398017 8.333333333333334 3.5895094432814436 3.0 2.0860002266786912
11.0 14.0 4.0 39.666666666666664 4.671569616378162 2.0 4.225837191170536 9.666666666666666 5.907752682730864 13.0 4.958438747834021 8.666666666666666 3.733089821012701 6.333333333333333 4.403778256321681
11.0 0.0 0.0 9.333333333333334 1.0991928509125088 0.3333333333333333 0.7043061985284226 3.0 1.8334404877440615 3.6666666666666665 1.398534005799339 1.0 0.4307411331937732 1.3333333333333333 0.927111211857196
11.0 6.0 3.0 17.666666666666668 2.080615039227249 0.6666666666666666 1.4086123970568452 5.666666666666667 3.463165365738783 6.666666666666667 2.542789101453344 2.6666666666666665 1.1486430218500618 2.0 1.3906668177857942
11.0 5.0 1.0 7.666666666666667 0.9029084132495607 0.0 0.0 1.3333333333333333 0.8148624389973607 3.3333333333333335 1.271394550726672 0.6666666666666666 0.28716075546251546 2.3333333333333335 1.6224446207500933
11.0 23.0 0.0 14.666666666666666 1.7273030514339422 0.6666666666666666 1.4086123970568452 5.0 3.0557341462401024 5.666666666666667 2.1613707362353423 2.3333333333333335 1.0050626441188042 1.0 0.6953334088928971
11.0 22.0 0.0 25.0 2.9442665649442197 0.0 0.0 6.666666666666667 4.0743121949868035 8.333333333333334 3.17848637681668 7.0 3.0151879323564126 3.0 2.0860002266786912
11.0 3.0 0.0 5.333333333333333 0.6281102005214335 0.3333333333333333 0.7043061985284226 1.0 0.6111468292480204 2.0 0.7628367304360032 0.6666666666666666 0.28716075546251546 1.3333333333333333 0.927111211857196
11.0 15.0 4.0 33.0 3.88643186572637 1.0 2.112918595585268 6.666666666666667 4.0743121949868035 11.666666666666666 4.449880927543352 10.333333333333334 4.45099170966899 3.3333333333333335 2.3177780296429904
11.0 13.0 4.0 25.666666666666668 3.022780340009399 0.0 0.0 7.0 4.278027804736143 11.333333333333334 4.3227414724706845 4.0 1.7229645327750929 3.3333333333333335 2.3177780296429904
11.0 18.0 0.0 65.33333333333333 7.69434995638756 1.3333333333333333 2.8172247941136903 14.666666666666666 8.963486828970966 21.333333333333332 8.1369251246507 17.0 7.322599264294144 11.0 7.648667497821868
11.0 1.0 0.0 7.333333333333333 0.8636515257169711 0.0 0.0 4.333333333333333 2.648302926741422 2.0 0.7628367304360032 1.0 0.4307411331937732 0.0 0.0
11.0 19.0 0.0 47.0 5.535221142095133 1.6666666666666667 3.5215309926421132 9.0 5.500321463232185 15.333333333333334 5.848414933342691 12.0 5.168893598325279 9.0 6.258000680036074
11.0 16.0 4.0 29.333333333333332 3.4546061028678845 0.6666666666666666 1.4086123970568452 10.333333333333334 6.3151839022295455 9.0 3.432765286962014 4.666666666666667 2.0101252882376084 4.666666666666667 3.2448892415001866
11.0 10.0 4.0 27.666666666666668 3.2583216652049365 1.3333333333333333 2.8172247941136903 7.333333333333333 4.481743414485483 8.333333333333334 3.17848637681668 7.333333333333333 3.15876831008767 3.3333333333333335 2.3177780296429904
10.0 9.0 4.0 33.666666666666664 3.964945640791549 1.0 2.112918595585268 7.0 4.278027804736143 12.0 4.577020382616019 8.0 3.4459290655501857 5.666666666666667 3.9402226503930837
10.0 8.0 4.0 40.0 4.710826503910751 0.3333333333333333 0.7043061985284226 6.0 3.666880975488123 12.666666666666666 4.831299292761353 14.0 6.030375864712825 7.0 4.8673338622502795
10.0 7.0 4.0 23.666666666666668 2.7872390148138613 1.0 2.112918595585268 3.3333333333333335 2.0371560974934018 9.666666666666666 3.6870441971073484 5.0 2.153705665968866 4.666666666666667 3.2448892415001866
10.0 20.0 0.0 39.333333333333336 4.632312728845573 0.0 0.0 7.666666666666667 4.685459024234824 14.333333333333334 5.4669965681246895 10.0 4.307411331937732 7.333333333333333 5.099111665214578
10.0 6.0 2.0 21.666666666666668 2.5516976896183237 0.6666666666666666 1.4086123970568452 5.333333333333333 3.2594497559894426 6.0 2.2885101913080095 7.666666666666667 3.302348687818928 2.0 1.3906668177857942
10.0 10.0 4.0 25.0 2.9442665649442197 0.3333333333333333 0.7043061985284226 7.666666666666667 4.685459024234824 8.333333333333334 3.17848637681668 6.333333333333333 2.728027176893897 2.3333333333333335 1.6224446207500933
10.0 12.0 4.0 26.666666666666668 3.1405510026071677 0.6666666666666666 1.4086123970568452 8.0 4.8891746339841635 8.666666666666666 3.3056258318893468 5.666666666666667 2.4408664214313815 3.6666666666666665 2.549555832607289
10.0 11.0 4.0 27.0 3.1798078901397573 0.0 0.0 8.0 4.8891746339841635 10.0 3.8141836521800156 3.0 1.2922233995813197 6.0 4.1720004533573825
10.0 4.0 0.0 6.0 0.7066239755866127 0.0 0.0 3.0 1.8334404877440615 1.0 0.3814183652180016 1.3333333333333333 0.5743215109250309 0.6666666666666666 0.463555605928598
10.0 3.0 0.0 4.0 0.47108265039107516 0.3333333333333333 0.7043061985284226 1.3333333333333333 0.8148624389973607 0.3333333333333333 0.1271394550726672 1.3333333333333333 0.5743215109250309 0.6666666666666666 0.463555605928598
10.0 2.0 0.0 3.6666666666666665 0.43182576285848556 0.0 0.0 3.0 1.8334404877440615 0.6666666666666666 0.2542789101453344 0.0 0.0 0.0 0.0
10.0 23.0 0.0 13.333333333333334 1.5702755013035838 0.3333333333333333 0.7043061985284226 3.6666666666666665 2.2408717072427415 3.0 1.1442550956540047 3.3333333333333335 1.4358037773125774 3.0 2.0860002266786912
10.0 18.0 3.0 40.0 4.710826503910751 2.0 4.225837191170536 8.333333333333334 5.092890243733504 13.666666666666666 5.212717657979355 8.666666666666666 3.733089821012701 7.333333333333333 5.099111665214578
10.0 13.0 4.0 29.0 3.415349215335295 0.3333333333333333 0.7043061985284226 13.333333333333334 8.148624389973607 9.0 3.432765286962014 3.3333333333333335 1.4358037773125774 3.0 2.0860002266786912
10.0 15.0 4.0 42.0 4.946367829106289 1.0 2.112918595585268 8.333333333333334 5.092890243733504 20.0 7.628367304360031 6.666666666666667 2.8716075546251547 6.0 4.1720004533573825
10.0 1.0 0.0 8.333333333333334 0.9814221883147399 0.3333333333333333 0.7043061985284226 3.0 1.8334404877440615 2.6666666666666665 1.0171156405813375 1.6666666666666667 0.7179018886562887 0.6666666666666666 0.463555605928598
10.0 19.0 1.0 50.0 5.888533129888439 2.3333333333333335 4.930143389698959 12.333333333333334 7.537477560725587 17.333333333333332 6.6112516637786936 10.333333333333334 4.45099170966899 7.666666666666667 5.330889468178878
10.0 22.0 0.0 19.333333333333332 2.2768994768901964 1.3333333333333333 2.8172247941136903 5.0 3.0557341462401024 6.666666666666667 2.542789101453344 4.333333333333333 1.8665449105063505 2.0 1.3906668177857942
10.0 21.0 0.0 25.0 2.9442665649442197 1.0 2.112918595585268 8.0 4.8891746339841635 8.333333333333334 3.17848637681668 4.666666666666667 2.0101252882376084 3.0 2.0860002266786912
10.0 17.0 4.0 35.0 4.121973190921907 1.3333333333333333 2.8172247941136903 5.666666666666667 3.463165365738783 11.666666666666666 4.449880927543352 11.0 4.738152465131505 5.333333333333333 3.708444847428784
10.0 16.0 4.0 47.666666666666664 5.613734917160312 0.3333333333333333 0.7043061985284226 8.0 4.8891746339841635 17.0 6.484112208706026 11.666666666666666 5.02531322059402 10.666666666666666 7.416889694857568
10.0 14.0 4.0 42.666666666666664 5.024881604171468 0.6666666666666666 1.4086123970568452 8.666666666666666 5.296605853482844 16.0 6.102693843488026 9.0 3.876670198743959 8.333333333333334 5.794445074107476
10.0 0.0 0.0 8.666666666666666 1.0206790758473294 0.0 0.0 4.333333333333333 2.648302926741422 3.0 1.1442550956540047 0.3333333333333333 0.14358037773125773 1.0 0.6953334088928971
10.0 5.0 0.0 4.666666666666667 0.5495964254562544 0.0 0.0 1.0 0.6111468292480204 1.6666666666666667 0.635697275363336 1.6666666666666667 0.7179018886562887 0.3333333333333333 0.231777802964299
9.0 7.0 4.0 19.333333333333332 2.2768994768901964 0.6666666666666666 1.4086123970568452 2.6666666666666665 1.6297248779947213 7.0 2.669928556526011 6.666666666666667 2.8716075546251547 2.3333333333333335 1.6224446207500933
9.0 3.0 0.0 4.333333333333333 0.5103395379236647 0.0 0.0 1.3333333333333333 0.8148624389973607 0.6666666666666666 0.2542789101453344 1.6666666666666667 0.7179018886562887 0.6666666666666666 0.463555605928598
9.0 22.0 0.0 17.333333333333332 2.041358151694659 0.3333333333333333 0.7043061985284226 3.6666666666666665 2.2408717072427415 5.333333333333333 2.034231281162675 5.666666666666667 2.4408664214313815 2.3333333333333335 1.6224446207500933
9.0 20.0 0.0 30.666666666666668 3.611633652998243 0.3333333333333333 0.7043061985284226 8.333333333333334 5.092890243733504 11.0 4.195602017398017 6.666666666666667 2.8716075546251547 4.333333333333333 3.013111438535887
9.0 19.0 3.0 33.666666666666664 3.964945640791549 0.3333333333333333 0.7043061985284226 6.0 3.666880975488123 17.0 6.484112208706026 8.0 3.4459290655501857 2.3333333333333335 1.6224446207500933
9.0 16.0 4.0 43.0 5.064138491704058 0.0 0.0 10.666666666666666 6.518899511978885 14.666666666666666 5.594136023197356 9.0 3.876670198743959 8.666666666666666 6.026222877071774
9.0 9.0 4.0 25.333333333333332 2.9835234524768093 0.3333333333333333 0.7043061985284226 8.666666666666666 5.296605853482844 11.333333333333334 4.3227414724706845 4.333333333333333 1.8665449105063505 0.6666666666666666 0.463555605928598
9.0 8.0 4.0 31.0 3.6508905405308325 2.0 4.225837191170536 6.0 3.666880975488123 8.0 3.051346921744013 8.666666666666666 3.733089821012701 6.333333333333333 4.403778256321681
9.0 21.0 0.0 22.666666666666668 2.6694683522160925 1.0 2.112918595585268 6.333333333333333 3.870596585237463 9.0 3.432765286962014 3.0 1.2922233995813197 3.3333333333333335 2.3177780296429904
9.0 18.0 4.0 38.666666666666664 4.553798953780393 0.3333333333333333 0.7043061985284226 9.666666666666666 5.907752682730864 12.666666666666666 4.831299292761353 8.666666666666666 3.733089821012701 7.333333333333333 5.099111665214578
9.0 17.0 4.0 32.0 3.7686612031286013 0.3333333333333333 0.7043061985284226 6.666666666666667 4.0743121949868035 8.666666666666666 3.3056258318893468 8.333333333333334 3.5895094432814436 8.0 5.562667271143177
9.0 15.0 4.0 32.333333333333336 3.807918090661191 0.3333333333333333 0.7043061985284226 7.666666666666667 4.685459024234824 10.666666666666666 4.06846256232535 6.666666666666667 2.8716075546251547 7.0 4.8673338622502795
9.0 6.0 3.0 10.0 1.1777066259776878 0.0 0.0 2.0 1.2222936584960409 3.0 1.1442550956540047 3.0 1.2922233995813197 2.0 1.3906668177857942
9.0 5.0 1.0 7.333333333333333 0.8636515257169711 0.0 0.0 2.6666666666666665 1.6297248779947213 2.3333333333333335 0.8899761855086704 1.3333333333333333 0.5743215109250309 1.0 0.6953334088928971
9.0 14.0 4.0 36.0 4.239743853519676 1.0 2.112918595585268 10.0 6.111468292480205 14.333333333333334 5.4669965681246895 8.666666666666666 3.733089821012701 2.0 1.3906668177857942
9.0 2.0 0.0 7.333333333333333 0.8636515257169711 0.3333333333333333 0.7043061985284226 3.0 1.8334404877440615 1.3333333333333333 0.5085578202906688 0.6666666666666666 0.28716075546251546 2.0 1.3906668177857942
9.0 13.0 4.0 29.0 3.415349215335295 0.3333333333333333 0.7043061985284226 9.666666666666666 5.907752682730864 9.333333333333334 3.5599047420346817 4.666666666666667 2.0101252882376084 5.0 3.4766670444644854
9.0 12.0 4.0 26.333333333333332 3.101294115074578 0.0 0.0 6.0 3.666880975488123 8.666666666666666 3.3056258318893468 5.666666666666667 2.4408664214313815 6.0 4.1720004533573825
9.0 11.0 4.0 21.666666666666668 2.5516976896183237 0.0 0.0 5.0 3.0557341462401024 9.0 3.432765286962014 4.0 1.7229645327750929 3.6666666666666665 2.549555832607289
9.0 23.0 0.0 17.0 2.0021012641620692 0.3333333333333333 0.7043061985284226 6.0 3.666880975488123 5.333333333333333 2.034231281162675 4.666666666666667 2.0101252882376084 0.6666666666666666 0.463555605928598
9.0 10.0 4.0 21.666666666666668 2.5516976896183237 0.0 0.0 8.0 4.8891746339841635 6.333333333333333 2.4156496463806767 4.666666666666667 2.0101252882376084 2.6666666666666665 1.854222423714392
9.0 0.0 0.0 8.0 0.9421653007821503 0.0 0.0 1.6666666666666667 1.0185780487467009 2.6666666666666665 1.0171156405813375 2.3333333333333335 1.0050626441188042 1.3333333333333333 0.927111211857196
9.0 1.0 0.0 6.0 0.7066239755866127 0.0 0.0 1.3333333333333333 0.8148624389973607 2.0 0.7628367304360032 1.6666666666666667 0.7179018886562887 1.0 0.6953334088928971
9.0 4.0 0.0 5.333333333333333 0.6281102005214335 0.0 0.0 2.0 1.2222936584960409 1.0 0.3814183652180016 1.3333333333333333 0.5743215109250309 1.0 0.6953334088928971
8.0 9.0 4.0 20.666666666666668 2.4339270270205553 0.6666666666666666 1.4086123970568452 9.0 5.500321463232185 4.666666666666667 1.7799523710173408 4.333333333333333 1.8665449105063505 2.0 1.3906668177857942
8.0 12.0 4.0 27.333333333333332 3.219064777672347 1.0 2.112918595585268 9.333333333333334 5.704037072981525 9.666666666666666 3.6870441971073484 5.0 2.153705665968866 2.3333333333333335 1.6224446207500933
8.0 13.0 4.0 27.0 3.1798078901397573 0.6666666666666666 1.4086123970568452 7.0 4.278027804736143 12.0 4.577020382616019 5.0 2.153705665968866 2.3333333333333335 1.6224446207500933
8.0 14.0 4.0 28.333333333333332 3.3368354402701157 1.3333333333333333 2.8172247941136903 5.333333333333333 3.2594497559894426 12.333333333333334 4.704159837688686 5.666666666666667 2.4408664214313815 3.6666666666666665 2.549555832607289
8.0 15.0 4.0 34.666666666666664 4.082716303389318 0.0 0.0 14.666666666666666 8.963486828970966 10.333333333333334 3.9413231072526833 5.666666666666667 2.4408664214313815 4.0 2.7813336355715883
8.0 16.0 4.0 36.666666666666664 4.318257628584855 1.0 2.112918595585268 9.666666666666666 5.907752682730864 13.0 4.958438747834021 6.333333333333333 2.728027176893897 6.666666666666667 4.635556059285981
8.0 17.0 4.0 26.666666666666668 3.1405510026071677 0.6666666666666666 1.4086123970568452 6.333333333333333 3.870596585237463 11.0 4.195602017398017 3.3333333333333335 1.4358037773125774 5.333333333333333 3.708444847428784
8.0 20.0 0.0 37.333333333333336 4.396771403650035 1.0 2.112918595585268 7.0 4.278027804736143 13.666666666666666 5.212717657979355 9.0 3.876670198743959 6.666666666666667 4.635556059285981
8.0 21.0 0.0 27.0 3.1798078901397573 0.6666666666666666 1.4086123970568452 7.0 4.278027804736143 7.0 2.669928556526011 8.0 3.4459290655501857 4.333333333333333 3.013111438535887
8.0 6.0 4.0 5.666666666666667 0.6673670880540231 0.0 0.0 2.3333333333333335 1.4260092682453813 1.0 0.3814183652180016 1.3333333333333333 0.5743215109250309 1.0 0.6953334088928971
8.0 0.0 0.0 11.333333333333334 1.3347341761080462 0.0 0.0 2.6666666666666665 1.6297248779947213 4.333333333333333 1.6528129159446734 1.3333333333333333 0.5743215109250309 3.0 2.0860002266786912
8.0 2.0 0.0 4.666666666666667 0.5495964254562544 0.0 0.0 3.0 1.8334404877440615 0.6666666666666666 0.2542789101453344 1.0 0.4307411331937732 0.0 0.0
8.0 18.0 4.0 35.333333333333336 4.161230078454498 0.0 0.0 7.666666666666667 4.685459024234824 11.666666666666666 4.449880927543352 9.666666666666666 4.163830954206474 6.333333333333333 4.403778256321681
8.0 19.0 4.0 30.333333333333332 3.572376765465653 0.6666666666666666 1.4086123970568452 5.333333333333333 3.2594497559894426 9.0 3.432765286962014 9.0 3.876670198743959 6.333333333333333 4.403778256321681
8.0 22.0 0.0 17.333333333333332 2.041358151694659 0.6666666666666666 1.4086123970568452 4.666666666666667 2.8520185364907626 7.333333333333333 2.797068011598678 3.0 1.2922233995813197 1.6666666666666667 1.1588890148214952
8.0 23.0 0.0 13.0 1.5310186137709942 0.6666666666666666 1.4086123970568452 3.6666666666666665 2.2408717072427415 3.3333333333333335 1.271394550726672 3.3333333333333335 1.4358037773125774 2.0 1.3906668177857942
8.0 1.0 0.0 4.666666666666667 0.5495964254562544 0.0 0.0 2.0 1.2222936584960409 1.0 0.3814183652180016 1.0 0.4307411331937732 0.6666666666666666 0.463555605928598
8.0 11.0 4.0 24.333333333333332 2.8657527898790405 0.3333333333333333 0.7043061985284226 7.333333333333333 4.481743414485483 7.666666666666667 2.9242074666713456 6.333333333333333 2.728027176893897 2.6666666666666665 1.854222423714392
8.0 3.0 0.0 8.0 0.9421653007821503 0.0 0.0 4.333333333333333 2.648302926741422 1.3333333333333333 0.5085578202906688 1.3333333333333333 0.5743215109250309 1.0 0.6953334088928971
8.0 10.0 4.0 21.0 2.4731839145531445 1.0 2.112918595585268 5.333333333333333 3.2594497559894426 9.0 3.432765286962014 3.6666666666666665 1.579384155043835 2.0 1.3906668177857942
8.0 4.0 1.0 6.333333333333333 0.7458808631192023 0.0 0.0 3.0 1.8334404877440615 1.3333333333333333 0.5085578202906688 1.0 0.4307411331937732 1.0 0.6953334088928971
8.0 5.0 2.0 3.6666666666666665 0.43182576285848556 0.0 0.0 2.0 1.2222936584960409 0.3333333333333333 0.1271394550726672 0.6666666666666666 0.28716075546251546 0.6666666666666666 0.463555605928598
8.0 7.0 4.0 12.0 1.4132479511732254 1.0 2.112918595585268 4.333333333333333 2.648302926741422 3.0 1.1442550956540047 1.3333333333333333 0.5743215109250309 2.3333333333333335 1.6224446207500933
8.0 8.0 4.0 21.0 2.4731839145531445 0.6666666666666666 1.4086123970568452 6.333333333333333 3.870596585237463 7.333333333333333 2.797068011598678 4.333333333333333 1.8665449105063505 2.3333333333333335 1.6224446207500933
7.0 18.0 4.0 35.666666666666664 4.2004869659870865 0.0 0.0 5.666666666666667 3.463165365738783 13.666666666666666 5.212717657979355 8.333333333333334 3.5895094432814436 8.0 5.562667271143177
7.0 11.0 4.0 21.333333333333332 2.512440802085734 0.3333333333333333 0.7043061985284226 6.0 3.666880975488123 4.666666666666667 1.7799523710173408 6.0 2.5844467991626394 4.333333333333333 3.013111438535887
7.0 9.0 4.0 19.333333333333332 2.2768994768901964 0.0 0.0 4.0 2.4445873169920818 7.0 2.669928556526011 5.0 2.153705665968866 3.3333333333333335 2.3177780296429904
7.0 8.0 4.0 23.0 2.708725239748682 0.3333333333333333 0.7043061985284226 6.333333333333333 3.870596585237463 7.333333333333333 2.797068011598678 5.0 2.153705665968866 4.0 2.7813336355715883
7.0 6.0 4.0 5.0 0.5888533129888439 0.0 0.0 3.0 1.8334404877440615 1.3333333333333333 0.5085578202906688 0.6666666666666666 0.28716075546251546 0.0 0.0
7.0 5.0 3.0 5.666666666666667 0.6673670880540231 0.0 0.0 3.0 1.8334404877440615 2.0 0.7628367304360032 0.3333333333333333 0.14358037773125773 0.3333333333333333 0.231777802964299
7.0 4.0 2.0 9.0 1.059935963379919 0.0 0.0 5.0 3.0557341462401024 1.0 0.3814183652180016 2.0 0.8614822663875464 1.0 0.6953334088928971
7.0 3.0 0.0 5.666666666666667 0.6673670880540231 0.0 0.0 1.6666666666666667 1.0185780487467009 3.0 1.1442550956540047 0.3333333333333333 0.14358037773125773 0.6666666666666666 0.463555605928598
7.0 22.0 0.0 21.333333333333332 2.512440802085734 0.0 0.0 7.333333333333333 4.481743414485483 7.666666666666667 2.9242074666713456 3.6666666666666665 1.579384155043835 2.6666666666666665 1.854222423714392
7.0 21.0 0.0 28.666666666666668 3.3760923278027053 0.6666666666666666 1.4086123970568452 7.333333333333333 4.481743414485483 11.333333333333334 4.3227414724706845 5.0 2.153705665968866 4.333333333333333 3.013111438535887
7.0 20.0 0.0 24.333333333333332 2.8657527898790405 1.6666666666666667 3.5215309926421132 5.333333333333333 3.2594497559894426 9.0 3.432765286962014 4.333333333333333 1.8665449105063505 4.0 2.7813336355715883
7.0 1.0 0.0 6.333333333333333 0.7458808631192023 0.0 0.0 1.0 0.6111468292480204 2.0 0.7628367304360032 2.6666666666666665 1.1486430218500618 0.6666666666666666 0.463555605928598
7.0 10.0 4.0 18.0 2.119871926759838 0.6666666666666666 1.4086123970568452 5.666666666666667 3.463165365738783 5.0 1.9070918260900078 4.0 1.7229645327750929 2.6666666666666665 1.854222423714392
7.0 17.0 4.0 33.333333333333336 3.9256887532589597 0.6666666666666666 1.4086123970568452 8.0 4.8891746339841635 12.666666666666666 4.831299292761353 7.666666666666667 3.302348687818928 4.333333333333333 3.013111438535887
7.0 16.0 4.0 33.666666666666664 3.964945640791549 0.3333333333333333 0.7043061985284226 9.0 5.500321463232185 12.333333333333334 4.704159837688686 6.0 2.5844467991626394 6.0 4.1720004533573825
7.0 15.0 4.0 24.0 2.826495902346451 1.0 2.112918595585268 7.666666666666667 4.685459024234824 8.0 3.051346921744013 4.0 1.7229645327750929 3.3333333333333335 2.3177780296429904
7.0 14.0 4.0 31.666666666666668 3.7294043155960117 1.6666666666666667 3.5215309926421132 7.333333333333333 4.481743414485483 11.0 4.195602017398017 6.333333333333333 2.728027176893897 5.333333333333333 3.708444847428784
7.0 12.0 4.0 31.0 3.6508905405308325 1.0 2.112918595585268 8.333333333333334 5.092890243733504 10.333333333333334 3.9413231072526833 6.333333333333333 2.728027176893897 5.0 3.4766670444644854
7.0 13.0 4.0 30.333333333333332 3.572376765465653 0.3333333333333333 0.7043061985284226 6.666666666666667 4.0743121949868035 13.0 4.958438747834021 5.0 2.153705665968866 5.333333333333333 3.708444847428784
7.0 0.0 0.0 13.333333333333334 1.5702755013035838 0.3333333333333333 0.7043061985284226 4.333333333333333 2.648302926741422 4.333333333333333 1.6528129159446734 3.0 1.2922233995813197 1.3333333333333333 0.927111211857196
7.0 23.0 0.0 22.666666666666668 2.6694683522160925 2.0 4.225837191170536 5.666666666666667 3.463165365738783 7.333333333333333 2.797068011598678 4.0 1.7229645327750929 3.6666666666666665 2.549555832607289
7.0 7.0 4.0 10.0 1.1777066259776878 1.3333333333333333 2.8172247941136903 2.6666666666666665 1.6297248779947213 2.6666666666666665 1.0171156405813375 1.6666666666666667 0.7179018886562887 1.6666666666666667 1.1588890148214952
7.0 2.0 0.0 6.666666666666667 0.7851377506517919 0.3333333333333333 0.7043061985284226 2.0 1.2222936584960409 2.3333333333333335 0.8899761855086704 1.3333333333333333 0.5743215109250309 0.6666666666666666 0.463555605928598
7.0 19.0 4.0 36.333333333333336 4.279000741052267 1.0 2.112918595585268 6.333333333333333 3.870596585237463 13.666666666666666 5.212717657979355 8.0 3.4459290655501857 7.333333333333333 5.099111665214578
6.0 16.0 4.0 48.0 5.652991804692902 1.0 2.112918595585268 12.0 7.333761950976246 17.333333333333332 6.6112516637786936 10.333333333333334 4.45099170966899 7.333333333333333 5.099111665214578
6.0 14.0 4.0 38.666666666666664 4.553798953780393 2.3333333333333335 4.930143389698959 7.0 4.278027804736143 16.666666666666668 6.35697275363336 8.0 3.4459290655501857 4.666666666666667 3.2448892415001866
6.0 7.0 4.0 19.666666666666668 2.3161563644227865 1.0 2.112918595585268 4.333333333333333 2.648302926741422 8.333333333333334 3.17848637681668 3.6666666666666665 1.579384155043835 2.3333333333333335 1.6224446207500933
6.0 10.0 4.0 23.333333333333332 2.7479821272812717 1.0 2.112918595585268 9.0 5.500321463232185 9.0 3.432765286962014 3.0 1.2922233995813197 1.3333333333333333 0.927111211857196
6.0 9.0 4.0 28.666666666666668 3.3760923278027053 0.3333333333333333 0.7043061985284226 9.666666666666666 5.907752682730864 9.333333333333334 3.5599047420346817 6.0 2.5844467991626394 3.3333333333333335 2.3177780296429904
6.0 21.0 0.0 28.0 3.297578552737526 0.3333333333333333 0.7043061985284226 4.333333333333333 2.648302926741422 12.0 4.577020382616019 4.0 1.7229645327750929 7.333333333333333 5.099111665214578
6.0 20.0 0.0 29.666666666666668 3.493862990400474 0.3333333333333333 0.7043061985284226 5.666666666666667 3.463165365738783 11.333333333333334 4.3227414724706845 6.0 2.5844467991626394 6.333333333333333 4.403778256321681
6.0 23.0 0.0 14.666666666666666 1.7273030514339422 0.3333333333333333 0.7043061985284226 5.666666666666667 3.463165365738783 5.666666666666667 2.1613707362353423 0.6666666666666666 0.28716075546251546 2.3333333333333335 1.6224446207500933
6.0 1.0 0.0 11.0 1.2954772885754566 0.0 0.0 2.6666666666666665 1.6297248779947213 4.333333333333333 1.6528129159446734 2.6666666666666665 1.1486430218500618 1.3333333333333333 0.927111211857196
6.0 8.0 4.0 29.0 3.415349215335295 0.6666666666666666 1.4086123970568452 7.333333333333333 4.481743414485483 9.666666666666666 3.6870441971073484 6.666666666666667 2.8716075546251547 4.666666666666667 3.2448892415001866
6.0 6.0 4.0 9.0 1.059935963379919 0.0 0.0 4.666666666666667 2.8520185364907626 2.3333333333333335 0.8899761855086704 1.6666666666666667 0.7179018886562887 0.3333333333333333 0.231777802964299
6.0 2.0 0.0 6.666666666666667 0.7851377506517919 0.0 0.0 3.0 1.8334404877440615 2.6666666666666665 1.0171156405813375 0.6666666666666666 0.28716075546251546 0.3333333333333333 0.231777802964299
6.0 22.0 0.0 19.333333333333332 2.2768994768901964 0.3333333333333333 0.7043061985284226 4.0 2.4445873169920818 7.0 2.669928556526011 3.6666666666666665 1.579384155043835 4.333333333333333 3.013111438535887
6.0 19.0 4.0 36.0 4.239743853519676 2.0 4.225837191170536 9.666666666666666 5.907752682730864 8.666666666666666 3.3056258318893468 7.333333333333333 3.15876831008767 8.333333333333334 5.794445074107476
6.0 18.0 4.0 52.333333333333336 6.163331342616567 0.6666666666666666 1.4086123970568452 8.0 4.8891746339841635 17.333333333333332 6.6112516637786936 18.0 7.753340397487918 8.333333333333334 5.794445074107476
6.0 17.0 4.0 36.666666666666664 4.318257628584855 1.0 2.112918595585268 8.666666666666666 5.296605853482844 12.0 4.577020382616019 7.333333333333333 3.15876831008767 7.666666666666667 5.330889468178878
6.0 15.0 4.0 40.666666666666664 4.7893402789759305 2.0 4.225837191170536 11.0 6.722615121728225 16.666666666666668 6.35697275363336 5.333333333333333 2.2972860437001237 5.666666666666667 3.9402226503930837
6.0 13.0 4.0 23.0 2.708725239748682 0.6666666666666666 1.4086123970568452 7.0 4.278027804736143 8.0 3.051346921744013 3.3333333333333335 1.4358037773125774 4.0 2.7813336355715883
6.0 12.0 4.0 29.0 3.415349215335295 0.6666666666666666 1.4086123970568452 8.0 4.8891746339841635 11.666666666666666 4.449880927543352 4.333333333333333 1.8665449105063505 4.333333333333333 3.013111438535887
6.0 11.0 4.0 29.666666666666668 3.493862990400474 0.0 0.0 9.333333333333334 5.704037072981525 8.666666666666666 3.3056258318893468 6.666666666666667 2.8716075546251547 5.0 3.4766670444644854
6.0 0.0 0.0 13.0 1.5310186137709942 0.3333333333333333 0.7043061985284226 4.0 2.4445873169920818 4.333333333333333 1.6528129159446734 2.6666666666666665 1.1486430218500618 1.6666666666666667 1.1588890148214952
6.0 5.0 4.0 4.666666666666667 0.5495964254562544 0.0 0.0 2.6666666666666665 1.6297248779947213 1.0 0.3814183652180016 1.0 0.4307411331937732 0.0 0.0
6.0 3.0 1.0 6.333333333333333 0.7458808631192023 0.6666666666666666 1.4086123970568452 2.6666666666666665 1.6297248779947213 1.3333333333333333 0.5085578202906688 1.3333333333333333 0.5743215109250309 0.3333333333333333 0.231777802964299
6.0 4.0 2.0 4.0 0.47108265039107516 0.0 0.0 0.6666666666666666 0.40743121949868033 1.3333333333333333 0.5085578202906688 1.6666666666666667 0.7179018886562887 0.3333333333333333 0.231777802964299
5.0 14.0 4.0 36.333333333333336 4.279000741052267 1.3333333333333333 2.8172247941136903 9.0 5.500321463232185 12.0 4.577020382616019 7.333333333333333 3.15876831008767 6.666666666666667 4.635556059285981
5.0 15.0 4.0 49.0 5.7707624672906705 2.3333333333333335 4.930143389698959 8.333333333333334 5.092890243733504 20.333333333333332 7.7555067594326985 8.0 3.4459290655501857 10.0 6.953334088928971
5.0 11.0 4.0 24.0 2.826495902346451 0.6666666666666666 1.4086123970568452 6.333333333333333 3.870596585237463 7.333333333333333 2.797068011598678 6.0 2.5844467991626394 3.6666666666666665 2.549555832607289
5.0 10.0 4.0 23.0 2.708725239748682 1.0 2.112918595585268 6.666666666666667 4.0743121949868035 8.0 3.051346921744013 1.6666666666666667 0.7179018886562887 5.666666666666667 3.9402226503930837
5.0 16.0 4.0 36.0 4.239743853519676 1.6666666666666667 3.5215309926421132 9.0 5.500321463232185 13.333333333333334 5.085578202906688 8.333333333333334 3.5895094432814436 3.6666666666666665 2.549555832607289
5.0 12.0 4.0 31.0 3.6508905405308325 1.0 2.112918595585268 13.333333333333334 8.148624389973607 7.666666666666667 2.9242074666713456 7.0 3.0151879323564126 2.0 1.3906668177857942
5.0 17.0 4.0 44.0 5.1819091543018265 0.6666666666666666 1.4086123970568452 10.666666666666666 6.518899511978885 16.666666666666668 6.35697275363336 7.666666666666667 3.302348687818928 8.333333333333334 5.794445074107476
5.0 18.0 4.0 38.666666666666664 4.553798953780393 1.0 2.112918595585268 10.333333333333334 6.3151839022295455 11.333333333333334 4.3227414724706845 8.666666666666666 3.733089821012701 7.333333333333333 5.099111665214578
5.0 19.0 4.0 31.666666666666668 3.7294043155960117 0.6666666666666666 1.4086123970568452 7.333333333333333 4.481743414485483 8.666666666666666 3.3056258318893468 6.0 2.5844467991626394 9.0 6.258000680036074
5.0 23.0 0.0 19.333333333333332 2.2768994768901964 0.6666666666666666 1.4086123970568452 4.333333333333333 2.648302926741422 6.0 2.2885101913080095 5.333333333333333 2.2972860437001237 3.0 2.0860002266786912
5.0 1.0 0.0 5.333333333333333 0.6281102005214335 0.3333333333333333 0.7043061985284226 1.6666666666666667 1.0185780487467009 1.6666666666666667 0.635697275363336 0.6666666666666666 0.28716075546251546 1.0 0.6953334088928971
5.0 20.0 0.0 24.333333333333332 2.8657527898790405 1.3333333333333333 2.8172247941136903 7.333333333333333 4.481743414485483 6.333333333333333 2.4156496463806767 5.333333333333333 2.2972860437001237 4.0 2.7813336355715883
5.0 2.0 0.0 4.0 0.47108265039107516 0.0 0.0 2.0 1.2222936584960409 1.3333333333333333 0.5085578202906688 0.6666666666666666 0.28716075546251546 0.0 0.0
5.0 21.0 0.0 30.666666666666668 3.611633652998243 0.0 0.0 9.666666666666666 5.907752682730864 12.333333333333334 4.704159837688686 5.666666666666667 2.4408664214313815 3.0 2.0860002266786912
5.0 22.0 0.0 25.0 2.9442665649442197 0.6666666666666666 1.4086123970568452 5.666666666666667 3.463165365738783 9.0 3.432765286962014 7.0 3.0151879323564126 2.6666666666666665 1.854222423714392
5.0 5.0 3.0 5.333333333333333 0.6281102005214335 0.0 0.0 0.6666666666666666 0.40743121949868033 1.3333333333333333 0.5085578202906688 2.0 0.8614822663875464 1.3333333333333333 0.927111211857196
5.0 9.0 4.0 32.0 3.7686612031286013 1.0 2.112918595585268 8.0 4.8891746339841635 12.0 4.577020382616019 5.333333333333333 2.2972860437001237 5.666666666666667 3.9402226503930837
5.0 7.0 4.0 20.666666666666668 2.4339270270205553 0.0 0.0 4.0 2.4445873169920818 10.0 3.8141836521800156 4.333333333333333 1.8665449105063505 2.3333333333333335 1.6224446207500933
5.0 8.0 4.0 30.666666666666668 3.611633652998243 0.6666666666666666 1.4086123970568452 5.333333333333333 3.2594497559894426 12.666666666666666 4.831299292761353 7.0 3.0151879323564126 5.0 3.4766670444644854
5.0 3.0 0.0 4.666666666666667 0.5495964254562544 0.3333333333333333 0.7043061985284226 2.3333333333333335 1.4260092682453813 0.6666666666666666 0.2542789101453344 0.6666666666666666 0.28716075546251546 0.6666666666666666 0.463555605928598
5.0 4.0 2.0 5.666666666666667 0.6673670880540231 0.0 0.0 1.0 0.6111468292480204 2.0 0.7628367304360032 2.3333333333333335 1.0050626441188042 0.3333333333333333 0.231777802964299
5.0 6.0 4.0 6.666666666666667 0.7851377506517919 0.3333333333333333 0.7043061985284226 1.6666666666666667 1.0185780487467009 1.6666666666666667 0.635697275363336 1.3333333333333333 0.5743215109250309 1.6666666666666667 1.1588890148214952
5.0 13.0 4.0 29.666666666666668 3.493862990400474 0.3333333333333333 0.7043061985284226 9.333333333333334 5.704037072981525 10.333333333333334 3.9413231072526833 4.0 1.7229645327750929 5.666666666666667 3.9402226503930837
5.0 0.0 0.0 9.666666666666666 1.1384497384450982 0.3333333333333333 0.7043061985284226 2.6666666666666665 1.6297248779947213 2.6666666666666665 1.0171156405813375 2.0 0.8614822663875464 2.0 1.3906668177857942
Borough AvgInjuredKilledByMonth AvgInjuredKilledByMonthPerPop AvgInjuredKilledByMonthPer1000000Pop
0.0 24.727272727272727 5.224671436356299e-05 52.24671436356299
1.0 225.1818181818182 0.00013761915418612243 137.61915418612244
2.0 292.3939393939394 0.00011152441836328779 111.5244183632878
3.0 188.54545454545453 8.121428274944414e-05 81.21428274944414
4.0 129.72727272727272 9.02037067718331e-05 90.20370677183311
/* GENERAL ******************************************************/
body {
background-color: rgb(235,235,235);
/* background-color: rgb(250,250,250); */
font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
color: rgb(122,122,122);
}
h1 {
font-size: 30px;
font-weight: bold;
line-height: 100%;
cursor: default;
}
p {
font-size: 16px;
line-height: 100%;
width: 580px;
cursor: default;
}
div {
line-height: 100%;
cursor: default;
}
a {
color: rgb(180,180,180);
}
a:hover {
color: rgb(122,122,122);
}
.description {
font-size: 12px;
fill: rgb(122,122,122);
}
.annotation {
font-size: 12px;
fill: rgb(122,122,122);
stroke: none;
color: rgb(122,122,122);
line-height: 100%;
cursor: default;
}
text {
/* Make unselectable */
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
cursor: default;
}
.axis text {
font-size: 14px;
fill: rgb(122,122,122);
}
.label {
font-size: 16px;
fill: rgb(122,122,122);
}
.axis path,
.axis line {
fill: none;
stroke: rgb(122,122,122);
stroke-width: 1px;
shape-rendering: crispEdges;
}
.base {
fill: rgb(250,250,250);
}
/* PICKER **********************************************************/
#svg_picker {
/*background-color: pink;*/
}
text.picker {
font-size:20px;
fill: rgb(122,122,122);
}
text.picker.button {
cursor: pointer;
}
rect.picker.button {
stroke-width: 1px;
stroke: rgb(122,122,122);
cursor: pointer;
}
/* BAR **********************************************************/
#svg_bar {
/*background-color: lightblue;*/
}
.bar.error {
stroke-width: 2px;
stroke: rgb(122,122,122);
}
.bar.rects {
fill: rgb(0,130,65);
}
.map.annotation {
background-color: rgb(250,250,250);
}
/* MAP **********************************************************/
#svg_map {
/*background-color: yellow;*/
}
.map.borough {
fill: white;
stroke: rgb(122,122,122);
stroke-width: 1px;
}
.map.annotation {
background-color: rgb(250,250,250);
}
.map path {
cursor: pointer;
}
.map.return.text {
font-size:20px;
fill: rgb(122,122,122);
cursor: pointer;
}
.map.return.rect {
stroke-width: 1px;
stroke: rgb(122,122,122);
cursor: pointer;
}
.map.borough.info {
font-size:20px;
font-weight: bold;
cursor: pointer;
fill: rgb(122,122,122);
stroke: none;
}
/* PLOT ********************************************************/
#svg_plot {
/*background-color: rgb(230,255,242);*/
}
.plot.line {
fill: none;
stroke-width: 2px;
stroke: rgb(0,130,65);
}
.plot.marker {
stroke: rgb(122,122,122);
stroke-width: 2px;
}
.plot.points {
fill: rgb(0,130,65);
}
/* GRID *********************************************************/
#svg_grid {
/*background-color: lightgreen;*/
}
.grid.axis path {
fill: none;
stroke: none;
}
/* GRIDPLOT ********************************************************/
#svg_gplot {
/*background-color: yellow;*/
}
.gplot.line {
fill: none;
stroke-width: 2px;
/* stroke: rgb(0,130,65); */
}
.gplot.line.highlight {
stroke-width: 5px;
stroke: rgb(135,206,250);
}
<!DOCTYPE html>
<html lang="en">
<head>
<!------------------------------------------------------------------>
<!-- BEGIN HEADER -->
<!------------------------------------------------------------------>
<meta charset="utf-8">
<title>Collisions with Pedestrians in NYC</title>
<script type="text/javascript" src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://d3js.org/topojson.v1.min.js"></script>
<link rel="stylesheet" type="text/css" href="index.css">
<!------------------------------------------------------------------>
<!-- END HEADER -->
<!------------------------------------------------------------------>
</head>
<body>
<!------------------------------------------------------------------>
<!-- BEGIN BODY -->
<!------------------------------------------------------------------>
<h1>PEDESTRIANS VERSUS CARS IN<br>NEW YORK CITY</h1>
<p>In January 2014, Mayor de Blasio launched a working group to implement <a href="http://www.nyc.gov/html/visionzero/pages/home/home.shtml">Vision Zero</a> and prevent pedestrian fatalities. This report examines data available from <a href="https://data.cityofnewyork.us/Public-Safety/NYPD-Motor-Vehicle-Collisions/h9gi-nx95">NYC OpenData</a> on motor vehicle collisions as reported by the New York Police Department from July 2012 to March 2015.</p>
<script type="text/javascript">
/////////////////////////////////////////////////////////////////////
// GLOBAL VARIABLES, DON'T POLLUTE THE NAME SPACE :)
/////////////////////////////////////////////////////////////////////
var dv={};
// Transition Time
dv.time_load=1000;
// Positions of Elements on Page
dv.width_picker=500;
dv.height_picker=115;
dv.width_map=615;
dv.height_map=600;
dv.width_map_annotation=250;
dv.height_map_annotation=100;
dv.width_plot=500.0;
dv.height_plot=dv.height_map*0.54;
dv.width_grid=(dv.width_map+dv.width_plot)/2;
dv.height_grid=460;
dv.width_gplot=(dv.width_map+dv.width_plot)-dv.width_grid;
dv.height_gplot=dv.height_grid-90;
dv.width_bar=dv.width_plot;
dv.height_bar=dv.height_map-dv.height_plot;
dv.x_map=0;
dv.x_map_annotation=25;
dv.x_plot=dv.x_map+dv.width_map;
dv.x_grid=dv.x_map;
dv.x_picker=dv.width_map;
dv.x_bar=dv.x_map+dv.width_map;
dv.y_map=160;
dv.y_map_annotation=50;
dv.y_grid=dv.y_map+dv.height_map;
dv.y_bar=dv.y_map;
dv.y_picker=dv.y_bar-dv.height_picker;
dv.y_plot=dv.y_bar+dv.height_bar;
dv.x_gplot=dv.x_grid+dv.width_grid;
dv.y_gplot=dv.y_grid;
// Base Properties
dv.basepad=10;
dv.baserad=15;
// Adjust <h1> <p> spacing
d3.select("h1").attr("style","margin: "+(dv.basepad*2)+"px 0px 0px "+(dv.basepad*2)+"px;");
d3.select("p").attr("style","margin: "+(dv.basepad)+"px 0px 0px "+(dv.basepad*2)+"px;");
// Picker
dv.tpad_picker=dv.basepad*4;
dv.tpadspc_picker=dv.basepad;
dv.pad_picker=dv.basepad*3;
dv.rad_picker=dv.baserad;
dv.height_picker_button=40;
dv.svg_picker=d3.select("body").append("svg")
.attr("class","picker")
.attr("id","svg_picker")
.attr("width",dv.width_picker)
.attr("height",dv.height_picker)
.attr("style","position:absolute; top:"+dv.y_picker+"px; left:"+dv.x_picker+"px;");
dv.svg_picker.append("rect").attr("class","base")
.attr("x",dv.basepad).attr("y",dv.basepad)
.attr("width",dv.width_picker-dv.basepad*2).attr("height",dv.height_picker-dv.basepad*2)
.attr("rx",dv.baserad).attr("ry",dv.baserad);
// Map
dv.x_map_return=50;
dv.y_map_return=200;
dv.width_map_return=150;
dv.height_map_return=dv.height_picker_button;
dv.svg_map=d3.select("body").append("svg")
.attr("class","map")
.attr("id","svg_map")
.attr("width",dv.width_map)
.attr("height",dv.height_map)
.attr("style","position:absolute; top:"+dv.y_map+"px; left:"+dv.x_map+"px;");
dv.svg_map.append("rect").attr("class","base")
.attr("x",dv.basepad*2).attr("y",dv.basepad)
.attr("width",dv.width_map-dv.basepad*3).attr("height",dv.height_map-dv.basepad*2)
.attr("rx",dv.baserad).attr("ry",dv.baserad);
// Bar
dv.pad_top_bar=40;
dv.pad_bottom_bar=155;
dv.pad_right_bar=50;
dv.pad_left_bar=85;
dv.pad_xaxis_bar=115;
dv.pad_title_bar=35;
dv.svg_bar=d3.select("body")
.append("svg")
.attr("id","svg_bar")
.attr("width",dv.width_bar)
.attr("height",dv.height_bar)
.attr("style","position:absolute; top:"+dv.y_bar+"px; left:"+dv.x_bar+"px;");
dv.svg_bar.append("rect").attr("class","base")
.attr("x",dv.basepad).attr("y",dv.basepad)
.attr("width",dv.width_bar-dv.basepad*2).attr("height",dv.height_bar-dv.basepad*2)
.attr("rx",dv.baserad).attr("ry",dv.baserad);
// Plot
dv.pad_top_plot=dv.basepad*4;
dv.pad_bottom_plot=90;
dv.pad_right_plot=dv.pad_right_bar;
dv.pad_left_plot=100;
dv.pad_xaxis_plot=40;
dv.pad_yaxis_plot=55;
dv.svg_plot=d3.select("body")
.append("svg")
.attr("id","svg_plot")
.attr("width",dv.width_plot)
.attr("height",dv.height_plot)
.attr("style","position:absolute; top:"+dv.y_plot+"px; left:"+dv.x_plot+"px;");
dv.svg_plot.append("rect").attr("class","base")
.attr("x",dv.basepad).attr("y",dv.basepad)
.attr("width",dv.width_plot-dv.basepad*2).attr("height",dv.height_plot-dv.basepad*2)
.attr("rx",dv.baserad).attr("ry",dv.baserad);
// Grid
dv.pad_top_grid=dv.basepad*7;
dv.pad_bottom_grid=160;
dv.pad_right_grid=50;
dv.pad_left_grid=110;
dv.pad_xaxis_grid=50;
dv.pad_yaxis_grid=55;
dv.xr=(dv.width_grid-dv.pad_right_grid-dv.pad_left_grid)/24.0/2.0,
dv.yr=(dv.height_grid-dv.pad_bottom_grid-dv.pad_top_grid)/12.0/2.0,
dv.maxr=dv.xr;
dv.svg_grid=d3.select("body")
.append("svg")
.attr("id","svg_grid")
.attr("width",dv.width_grid)
.attr("height",dv.height_grid)
.attr("style","position:absolute; top:"+dv.y_grid+"px; left:"+dv.x_grid+"px;");
dv.svg_grid.append("rect").attr("class","base")
.attr("x",dv.basepad*2).attr("y",dv.basepad)
.attr("width",dv.width_grid-dv.basepad*3).attr("height",dv.height_grid-dv.basepad*2)
.attr("rx",dv.baserad).attr("ry",dv.baserad);
// Gridplot
dv.pad_top_gplot=dv.pad_top_grid;
dv.pad_bottom_gplot=dv.pad_bottom_grid-90;
dv.pad_right_gplot=50;
dv.pad_left_gplot=100;
dv.pad_xaxis_gplot=40;
dv.pad_yaxis_gplot=55;
dv.svg_gplot=d3.select("body")
.append("svg")
.attr("id","svg_gplot")
.attr("width",dv.width_gplot)
.attr("height",dv.height_gplot)
.attr("style","position:absolute; top:"+dv.y_gplot+"px; left:"+dv.x_gplot+"px;");
dv.svg_gplot.append("rect").attr("class","base")
.attr("x",dv.basepad).attr("y",dv.basepad)
.attr("width",dv.width_gplot-dv.basepad*2).attr("height",dv.height_gplot-dv.basepad*2)
.attr("rx",dv.baserad).attr("ry",dv.baserad);
// Current State of Data You're Displaying
dv.tflag_set=0; // Numbers
dv.tbname_set=""; // New York City
/////////////////////////////////////////////////////////////////////
// LOAD ALL DATA YOU NEED AND KEEP OPEN UNTIL SCRIPT IS CLOSED
// THAT WAY YOU DON'T HAVE TO KEEP LOADING IT BACK IN
/////////////////////////////////////////////////////////////////////
d3.json("nycbb_topojson.json",function(error,nyc) {
if (error) return console.error(error);
d3.csv("Clean_NYPD_Collisions_OverallAvg_ByBorough.csv", function(error,odata) {
if (error) return console.log(error);
d3.csv("Clean_NYPD_Collisions_ALLBOROUGHS.csv", function(error,bdata) {
if (error) return console.log(error);
d3.csv("Clean_NYPD_Collisions_ByMonthOnlyHour_withSunlight_ALLBOROUGHS.csv", function(error,gdata) {
if (error) return console.log(error);
/////////////////////////////////////////////////////////////////////
// DATAPICKER
/////////////////////////////////////////////////////////////////////
dv.svg_picker.append("text")
.attr("class","picker")
.attr("x",dv.pad_picker).attr("y",dv.tpad_picker)
.attr("text-anchor","start")
.text("Select data units:");
var x_button=dv.pad_picker,
y_button=dv.tpad_picker+dv.tpadspc_picker,
w_button=dv.width_picker*0.9/3-dv.pad_picker*3/2;
dv.svg_picker.append("rect")
.attr("class","picker number button")
.attr("id","pickernumberrect")
.attr("x",x_button).attr("y",y_button)
.attr("width",w_button).attr("height",dv.height_picker_button)
.attr("rx",dv.rad_picker).attr("ry",dv.rad_picker)
.attr("fill","rgb(180,180,180)")
.append("title")
.text("Click to display data as number of pedestrian injuries and fatalities");
dv.svg_picker.append("text")
.attr("class","picker number button")
.attr("x",x_button+w_button/2)
.attr("y",y_button+dv.height_picker_button*0.64)
.attr("text-anchor","middle")
.text("Number")
.append("title")
.text("Click to display data as number of pedestrian injuries and fatalities");
x_button=x_button+w_button+dv.pad_picker;
w_button=dv.width_picker*(3-0.9)/3-dv.pad_picker*3/2;
dv.svg_picker.append("rect")
.attr("class","picker perpop button")
.attr("id","pickerperpoprect")
.attr("x",x_button).attr("y",y_button)
.attr("width",w_button).attr("height",dv.height_picker_button)
.attr("rx",dv.rad_picker).attr("ry",dv.rad_picker)
.attr("fill","rgb(250,250,250)")
.append("title")
.text("Click to display data as number of pedestrian injuries and fatalities per million people of the population");
dv.svg_picker.append("text")
.attr("class","picker perpop button")
.attr("x",x_button+w_button/2)
.attr("y",y_button+dv.height_picker_button*0.64)
.attr("text-anchor","middle")
.text("Number per Million Population")
.append("title")
.text("Click to display data as number of pedestrian injuries and fatalities per million people of the population");
// Picker: clicks
d3.selectAll(".picker.number")
.on("click",function(){
dv.tflag_set=0;
// Update Buttons
d3.selectAll("#pickernumberrect").attr("fill","rgb(180,180,180)");
d3.selectAll("#pickerperpoprect").attr("fill","rgb(250,250,250)");
// Load New Data
updateMapAnnotation(" ");
updateBarAnnotation(" ");
updateGridAnnotation(" ");
reloadMap(dv.tflag_set,nyc,odata);
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".picker.perpop")
.on("click",function(){
dv.tflag_set=1;
// Update Buttons
d3.selectAll("#pickerperpoprect").attr("fill","rgb(180,180,180)");
d3.selectAll("#pickernumberrect").attr("fill","rgb(250,250,250)");
// Load New Data
updateMapAnnotation("per million population ");
updateBarAnnotation("per million population ");
updateGridAnnotation("per million population ");
reloadMap(dv.tflag_set,nyc,odata);
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".picker.number")
.on("mouseover",function(){
restrokePickerBorder("number",2)
});
d3.selectAll(".picker.perpop")
.on("mouseover",function(){
restrokePickerBorder("perpop",2)
});
d3.selectAll(".picker.number")
.on("mouseleave",function(){
restrokePickerBorder("number",1)
});
d3.selectAll(".picker.perpop")
.on("mouseleave",function(){
restrokePickerBorder("perpop",1)
});
/////////////////////////////////////////////////////////////////////
// MAP
/////////////////////////////////////////////////////////////////////
var projection=d3.geo.mercator()
.center([-73.94,40.70])
.scale(55000)
.translate([dv.width_map/2+40,dv.height_map/2+5]);
var path=d3.geo.path()
.projection(projection);
// Draw Boroughs
var data_SI=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[0]),
data_MN=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[1]),
data_BX=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[2]),
data_BK=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[3]),
data_QN=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[4]);
dv.svg_map.append("path")
.attr("class","map borough SI")
.attr("id","mapboroughSI")
.datum(data_SI)
.attr("d",path);
dv.svg_map.append("text")
.attr("class","map borough SI info")
.attr("opacity","0.0")
.attr("x",0)
.attr("y",0)
.attr("transform","translate("+path.centroid(data_SI)+")")
.attr("text-anchor","middle")
.text(d3.round(odata[0].AvgInjuredKilledByMonth));
dv.svg_map.append("path")
.attr("class","map borough MN")
.datum(data_MN)
.attr("d",path);
dv.svg_map.append("text")
.attr("class","map borough MN info")
.attr("opacity","0.0")
.attr("x",0)
.attr("y",0)
.attr("transform","translate("+path.centroid(data_MN)+")")
.attr("text-anchor","middle")
.text(d3.round(odata[1].AvgInjuredKilledByMonth));
dv.svg_map.append("path")
.attr("class","map borough BX")
.datum(data_BX)
.attr("d",path);
dv.svg_map.append("text")
.attr("class","map borough BX info")
.attr("opacity","0.0")
.attr("x",0)
.attr("y",0)
.attr("transform","translate("+path.centroid(data_BX)+")")
.attr("text-anchor","middle")
.text(d3.round(odata[2].AvgInjuredKilledByMonth));
dv.svg_map.append("path")
.attr("class","map borough BK")
.datum(data_BK)
.attr("d",path);
dv.svg_map.append("text")
.attr("class","map borough BK info")
.attr("opacity","0.0")
.attr("x",0)
.attr("y",0)
.attr("transform","translate("+path.centroid(data_BK)+")")
.attr("text-anchor","middle")
.text(d3.round(odata[3].AvgInjuredKilledByMonth));
dv.svg_map.append("path")
.attr("class","map borough QN")
.datum(data_QN)
.attr("d",path);
dv.svg_map.append("text")
.attr("class","map borough QN info")
.attr("opacity","0.0")
.attr("x",0)
.attr("y",0)
.attr("transform","translate("+path.centroid(data_QN)+")")
.attr("text-anchor","middle")
.text(d3.round(odata[4].AvgInjuredKilledByMonth));
dv.svg_map.append("rect")
.attr("class","map return rect")
.attr("x",dv.x_map_return).attr("y",dv.y_map_return)
.attr("width",dv.width_map_return).attr("height",dv.height_map_return)
.attr("rx",dv.rad_picker).attr("ry",dv.rad_picker)
.attr("fill","rgb(250,250,250)")
.attr("visibility","hidden")
.append("title")
.text("Click to return to full new york city data");
dv.svg_map.append("text")
.attr("class","map return text")
.attr("x",dv.x_map_return+dv.width_map_return/2)
.attr("y",dv.y_map_return+dv.height_map_return*0.64)
.attr("text-anchor","middle")
.text("Return to NYC")
.attr("visibility","hidden")
.append("title")
.text("Click to return to full new york city data");
// Annotation
dv.svg_map.append("foreignObject")
.attr("class","map annotation")
.attr("width",dv.width_map_annotation)
.attr("height",dv.height_map_annotation)
.attr("x",dv.basepad*4)
.attr("y",dv.basepad*3)
.append("xhtml:body")
.append("xhtml:div");
updateMapAnnotation("");
// Fill in colors
reloadMap(dv.tflag_set,nyc,odata);
// Event listeners
d3.selectAll(".map.borough.SI")
.on("click",function(){
dv.tbname_set="SI"; //"_STATEN ISLAND";
restrokeMapBorder("SI",2);
restrokeMapBorder("MN",1);
restrokeMapBorder("BK",1);
restrokeMapBorder("QN",1);
restrokeMapBorder("BX",1);
updateTitle("STATEN ISLAND");
loadReturnButton("visible");
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".map.borough.MN")
.on("click",function(){
dv.tbname_set="MN"; //"_MANHATTAN";
restrokeMapBorder("SI",1);
restrokeMapBorder("MN",2);
restrokeMapBorder("BK",1);
restrokeMapBorder("QN",1);
restrokeMapBorder("BX",1);
updateTitle("MANHATTAN");
loadReturnButton("visible");
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".map.borough.BK")
.on("click",function(){
dv.tbname_set="BK"; //"_BROOKLYN";
restrokeMapBorder("SI",1);
restrokeMapBorder("MN",1);
restrokeMapBorder("BK",2);
restrokeMapBorder("QN",1);
restrokeMapBorder("BX",1);
updateTitle("BROOKLYN");
loadReturnButton("visible");
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".map.borough.QN")
.on("click",function(){
dv.tbname_set="QN"; //"_QUEENS";
restrokeMapBorder("SI",1);
restrokeMapBorder("MN",1);
restrokeMapBorder("BK",1);
restrokeMapBorder("QN",2);
restrokeMapBorder("BX",1);
updateTitle("QUEENS");
loadReturnButton("visible");
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".map.borough.BX")
.on("click",function(){
dv.tbname_set="BX"; //"_BRONX";
restrokeMapBorder("SI",1);
restrokeMapBorder("MN",1);
restrokeMapBorder("BK",1);
restrokeMapBorder("QN",1);
restrokeMapBorder("BX",2);
updateTitle("THE BRONX");
loadReturnButton("visible");
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".map.return")
.on("click",function(){
dv.tbname_set="";
restrokeMapBorder("SI",1);
restrokeMapBorder("MN",1);
restrokeMapBorder("BK",1);
restrokeMapBorder("QN",1);
restrokeMapBorder("BX",1);
updateTitle("NEW YORK CITY");
loadReturnButton("hidden");
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
d3.selectAll(".map.borough.SI")
.on("mouseover",function(){
restrokeMapBorder("SI",2);
updateMapData("SI",1.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.MN")
.on("mouseover",function(){
restrokeMapBorder("MN",2);
updateMapData("MN",1.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.BK")
.on("mouseover",function(){
restrokeMapBorder("BK",2);
updateMapData("BK",1.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.QN")
.on("mouseover",function(){
restrokeMapBorder("QN",2);
updateMapData("QN",1.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.BX")
.on("mouseover",function(){
restrokeMapBorder("BX",2);
updateMapData("BX",1.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.SI")
.on("mouseleave",function(){
if (dv.tbname_set != "SI") restrokeMapBorder("SI",1);
updateMapData("SI",0.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.MN")
.on("mouseleave",function(){
if (dv.tbname_set != "MN") restrokeMapBorder("MN",1);
updateMapData("MN",0.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.BK")
.on("mouseleave",function(){
if (dv.tbname_set != "BK") restrokeMapBorder("BK",1);
updateMapData("BK",0.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.QN")
.on("mouseleave",function(){
if (dv.tbname_set != "QN") restrokeMapBorder("QN",1);
updateMapData("QN",0.0,dv.tflag_set,odata);
});
d3.selectAll(".map.borough.BX")
.on("mouseleave",function(){
if (dv.tbname_set != "BX") restrokeMapBorder("BX",1);
updateMapData("BX",0.0,dv.tflag_set,odata);
});
d3.selectAll(".map.return")
.on("mouseover",function(){
restrokeReturnBorder(2)
});
d3.selectAll(".map.return")
.on("mouseleave",function(){
restrokeReturnBorder(1)
});
/////////////////////////////////////////////////////////////////////
// BAR
/////////////////////////////////////////////////////////////////////
// Setup
var xScale_bar=d3.scale.linear()
.range([0,dv.width_bar-dv.pad_right_bar-dv.pad_left_bar]);
var yScale_bar=d3.scale.ordinal()
.rangeRoundBands([dv.pad_top_bar,dv.height_bar-dv.pad_bottom_bar],0.3);
var xAxis_bar=d3.svg.axis()
.scale(xScale_bar)
.orient("bottom");
var yAxis_bar=d3.svg.axis()
.scale(yScale_bar)
.orient("left");
// Calculate Average and Standard Deviation Pre- and Post-Working Group
mnsd=calcMean(bdata,dv.tbname_set,dv.tflag_set);
xScale_bar.domain([0,d3.max(mnsd,function(d){
return +d.mn+(+d.sd);
})]);
yScale_bar.domain(mnsd.map(function(d) { return d.name; } ));
dv.svg_bar.selectAll("rect[id='barrects']").data(mnsd).enter().append("rect")
.attr("id","barrects")
.attr("class","bar rects")
.attr("x",dv.pad_left_bar)
.attr("y",function(d)
{
return yScale_bar(d.name);
})
.attr("width",0)
.attr("height",yScale_bar.rangeBand());
dv.svg_bar.selectAll("line[id='barlinemain']").data(mnsd).enter().append("line").attr("id","barlinemain")
.attr("class","bar error")
.attr("x1",dv.pad_left_bar)
.attr("x2",dv.pad_left_bar)
.attr("y1",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2;
})
.attr("y2",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2;
});
dv.svg_bar.selectAll("line[id='barlineleft']").data(mnsd).enter().append("line").attr("id","barlineleft")
.attr("class","bar error")
.attr("x1",dv.pad_left_bar)
.attr("x2",dv.pad_left_bar)
.attr("y1",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2;
})
.attr("y2",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2;
});
dv.svg_bar.selectAll("line[id='barlinerght']").data(mnsd).enter().append("line").attr("id","barlinerght")
.attr("class","bar error")
.attr("x1",dv.pad_left_bar)
.attr("x2",dv.pad_left_bar)
.attr("y1",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2;
})
.attr("y2",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2;
});
dv.svg_bar.append("g")
.attr("class","bar x axis")
.attr("transform","translate("+dv.pad_left_bar+","+(dv.height_bar-dv.pad_bottom_bar)+")")
.call(xAxis_bar);
dv.svg_bar.append("text")
.attr("x",dv.pad_left_bar+(dv.width_bar-dv.pad_left_bar-dv.pad_right_bar)/2)
.attr("y",dv.height_bar-dv.pad_xaxis_bar)
.attr("class","bar label")
.attr("text-anchor","middle")
.text("Number of Pedestrian Injuries and Fatalities Per Month");
dv.svg_bar.append("text") // To Fill in Later
.attr("class","bar y label")
.attr("id","barylabel2")
.attr("x",dv.pad_left_bar+(dv.width_bar-dv.pad_left_bar-dv.pad_right_bar)/2)
.attr("y",dv.height_bar-dv.pad_xaxis_bar+15)
.attr("text-anchor","middle")
.attr("opacity","0.0")
.text("Per Million Population");
dv.svg_bar.append("g")
.attr("class","bar y axis")
.attr("transform","translate("+dv.pad_left_bar+",0)")
.call(yAxis_bar);
dv.svg_bar.append("text")
.attr("x",dv.pad_left_bar+(dv.width_bar-dv.pad_left_bar-dv.pad_right_bar)/2)
.attr("y",dv.pad_title_bar)
.attr("class","bar label")
.attr("text-anchor","middle")
.text("Effect of Vision Zero Working Group");
// Load Bars
reloadBar(dv.tbname_set,dv.tflag_set,bdata);
// Annotate Bars
dv.svg_bar.append("foreignObject")
.attr("class","bar annotation")
.attr("width",dv.width_bar-dv.basepad*6)
.attr("height",110)
.attr("x",dv.basepad*3)
.attr("y",dv.height_bar-dv.pad_xaxis_bar+30)
.append("xhtml:body")
.append("xhtml:div");
updateBarAnnotation("");
/////////////////////////////////////////////////////////////////////
// PLOT
/////////////////////////////////////////////////////////////////////
// Setup
var xScale_plot=d3.time.scale()
.range([dv.pad_left_plot,dv.width_plot-dv.pad_right_plot]);
var yScale_plot=d3.scale.linear()
.range([dv.height_plot-dv.pad_bottom_plot,dv.pad_top_plot]);
var xAxis_plot=d3.svg.axis()
.scale(xScale_plot)
.orient("bottom")
.tickFormat(d3.time.format("%b"));
var yAxis_plot=d3.svg.axis()
.scale(yScale_plot)
.orient("left");
// Points
xScale_plot.domain(d3.extent(bdata,function(d){
return new Date(+d.Year,+d.Month-1);
}));
yScale_plot.domain([0,d3.max(bdata,function(d){
return +d.Ninjured+(+d.Nkilled);
})]);
dv.svg_plot.selectAll("circle")
.data(bdata)
.enter()
.append("circle")
.attr("class","plot points")
.attr("cx",function(d)
{
return xScale_plot(new Date(+d.Year,+d.Month-1));
})
.attr("cy",yScale_plot(0))
.attr("r",4);
var line = d3.svg.line()
.x(function(d) { return xScale_plot(new Date(+d.Year,+d.Month-1)); })
.y(function(d) { return yScale_plot(0); });
dv.svg_plot.append("path")
.datum(bdata)
.attr("class", "plot line")
.attr("d", line);
// Axes and Labels
dv.svg_plot.append("g")
.attr("class","plot x axis")
.call(xAxis_plot)
.attr("transform","translate(0,"+(dv.height_plot-dv.pad_bottom_plot)+")");
dv.svg_plot.append("text")
.attr("class","plot x label")
.attr("x",dv.pad_left_plot+(dv.width_plot-dv.pad_left_plot-dv.pad_right_plot)/2.0)
.attr("y",dv.height_plot-dv.pad_bottom_plot+dv.pad_xaxis_plot)
.text("Month")
.attr("text-anchor","middle");
dv.svg_plot.append("g")
.attr("class","plot y axis")
.attr("transform","translate("+dv.pad_left_plot+",0)")
.call(yAxis_plot);
var xtext=dv.pad_left_plot-dv.pad_yaxis_plot,
ytext=(dv.height_plot-dv.pad_bottom_plot-dv.pad_top_plot)/2.0+dv.pad_top_plot;
dv.svg_plot.append("text")
.attr("class","plot y label")
.attr("x",xtext)
.attr("y",ytext)
.attr("text-anchor","middle")
.attr("transform","rotate(-90,"+xtext+","+ytext+")")
.text("Number of Injuries + Fatalities");
dv.svg_plot.append("text") // To Fill in Later
.attr("class","plot y label")
.attr("id","plotylabel2")
.attr("x",xtext)
.attr("y",ytext+15)
.attr("text-anchor","middle")
.attr("transform","rotate(-90,"+xtext+","+ytext+")")
.attr("opacity","0.0")
.text("Per Million Population");
// Vision Zero Working Group Line
dv.svg_plot.append("line")
.attr("class","plot marker")
.attr("x1",xScale_plot(new Date(2014,1,15)))
.attr("y1",(yScale_plot.range())[0])
.attr("x2",xScale_plot(new Date(2014,1,15)))
.attr("y2",(yScale_plot.range())[1]);
dv.svg_plot.append("text")
.attr("class","plot annotation")
.attr("x",xScale_plot(new Date(2014,1,15)))
.attr("y",(yScale_plot.range())[1])
.attr("text-anchor","start")
.text("Vision Zero working");
dv.svg_plot.append("text")
.attr("class","plot annotation")
.attr("x",xScale_plot(new Date(2014,1,15))+3)
.attr("y",(yScale_plot.range())[1]+10)
.attr("text-anchor","start")
.text("group established");
// Caption
dv.svg_plot.append("text")
.attr("class","plot description")
.attr("x",dv.basepad*3)
.attr("y",dv.height_plot-dv.basepad*3)
.attr("text-anchor","start")
.text("It seems like there are more accidents in the winter months. Why? See below.");
// Load Points and Line
reloadPlot(dv.tbname_set,dv.tflag_set,bdata);
/////////////////////////////////////////////////////////////////////
// GRID
/////////////////////////////////////////////////////////////////////
// Setup
var xScale_grid=d3.time.scale()
.range([dv.pad_left_grid,dv.width_grid-dv.pad_right_grid]);
var yScale_grid=d3.time.scale()
.range([dv.pad_top_grid,dv.height_grid-dv.pad_bottom_grid]);
var rScale_grid=d3.scale.sqrt();
var cScale_grid=d3.scale.linear();
var xAxis_grid=d3.svg.axis()
.scale(xScale_grid)
.orient("bottom")
.tickFormat(d3.time.format("%-I%p"));
var yAxis_grid=d3.svg.axis()
.scale(yScale_grid)
.orient("left")
.tickFormat(d3.time.format("%b"));
// Points
xScale_grid.domain([d3.min(gdata,function(d){
return new Date(2014,1,1,+d.Hour);
}),
d3.max(gdata,function(d){
return new Date(2014,1,1,+d.Hour);
})]);
yScale_grid.domain([d3.min(gdata,function(d){
return new Date(2014,+d.Month-1);
}),
d3.max(gdata,function(d){
return new Date(2014,+d.Month-1);
})]);
rScale_grid.range([0,dv.maxr])
.domain([0,
d3.max(gdata,function(d){
return +d.Ninjuredkilled;
})]);
cScale_grid.range([135,0])
.domain([d3.min(gdata,function(d){
return +d.NightDay;
}),
d3.max(gdata,function(d){
return +d.NightDay;
})]);
dv.svg_grid.selectAll("rect[id='rectshow']")
.data(gdata)
.enter()
.append("rect")
.attr("id","rectshow")
.attr("class",function(d)
{
return "grid select hh"+d3.round(+d.Hour).toString()+" show";
})
.attr("x",function(d)
{
return xScale_grid(new Date(2014,1,1,+d.Hour))-dv.xr;
})
.attr("y",dv.pad_top_grid-dv.yr)
.attr("width",dv.xr*2)
.attr("height",dv.yr*13*2)
.attr("rx",10)
.attr("ry",10)
.attr("fill","rgb(122,122,122)")
.attr("stroke","none")
.attr("opacity","0.0");
dv.svg_grid.selectAll("circle")
.data(gdata)
.enter()
.append("circle")
.attr("class","grid points")
.attr("cx",function(d)
{
return xScale_grid(new Date(2014,1,1,+d.Hour));
})
.attr("cy",function(d)
{
return yScale_grid(new Date(2014,+d.Month-1));
})
.attr("r",0.1)
.attr("fill",function(d){
return "rgb(0,0,0)";
});
// Invisible rect to sense mouse hover
dv.svg_grid.selectAll("rect[id='rectsense']")
.data(gdata)
.enter()
.append("rect")
.attr("id","rectsense")
.attr("class",function(d)
{
return "grid select hh"+d3.round(+d.Hour).toString();
})
.attr("x",function(d)
{
return xScale_grid(new Date(2014,1,1,+d.Hour))-dv.xr;
})
.attr("y",dv.pad_top_grid-dv.yr)
.attr("width",dv.xr*2)
.attr("height",dv.yr*13*2)
.attr("rx",10)
.attr("ry",10)
.attr("opacity","0.0")
.on("mouseover",function(){
d3.selectAll(".grid.select.show").attr("opacity","0.0");
var classpick=d3.select(this).attr("class").split(" ")[2];
d3.selectAll(".grid.select."+classpick+".show").attr("opacity","1.0");
reloadGplot(dv.tbname_set,dv.tflag_set,gdata,classpick);
})
.on("mouseleave",function(){
d3.selectAll(".grid.select.show").attr("opacity","0.0");
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
});
// Labels
dv.svg_grid.append("g")
.attr("class","grid x axis")
.attr("transform","translate(0,"+(dv.height_grid-dv.pad_bottom_grid+dv.maxr)+")")
.call(xAxis_grid);
dv.svg_grid.append("text")
.attr("class","grid x label")
.attr("x",dv.pad_left_grid+(dv.width_grid-dv.pad_left_grid-dv.pad_right_grid)/2.0)
.attr("y",dv.height_grid-dv.pad_bottom_grid+dv.pad_xaxis_grid)
.text("Hour of Day")
.attr("text-anchor","middle");
dv.svg_grid.append("g")
.attr("class","grid y axis")
.attr("transform","translate("+(dv.pad_left_grid-dv.maxr)+",0)")
.call(yAxis_grid);
var xtext=dv.pad_left_grid-dv.pad_yaxis_grid,
ytext=(dv.height_grid-dv.pad_bottom_grid-dv.pad_top_grid)/2.0+dv.pad_top_grid;
dv.svg_grid.append("text")
.attr("class","grid y label")
.attr("x",xtext)
.attr("y",ytext)
.attr("text-anchor","middle")
.attr("transform","rotate(-90,"+xtext+","+ytext+")")
.text("Month of Year");
// Load Points
reloadGrid(dv.tbname_set,dv.tflag_set,gdata);
// Annotate Grid
dv.svg_grid.append("foreignObject")
.attr("class","grid annotation")
.attr("width",dv.width_grid-dv.basepad*7)
.attr("height",110)
.attr("x",dv.basepad*4)
.attr("y",dv.height_grid-95)
.append("xhtml:body")
.append("xhtml:div");
updateGridAnnotation("");
dv.svg_grid.append("text")
.attr("class","grid description")
.attr("x",dv.width_grid-dv.basepad*2)
.attr("y",dv.basepad*4)
.attr("text-anchor","end")
.text("Hover over a column in this plot...");
/////////////////////////////////////////////////////////////////////
// GRIDPLOT
/////////////////////////////////////////////////////////////////////
// Setup
var xScale_gplot=d3.time.scale()
.range([dv.pad_left_gplot,dv.width_gplot-dv.pad_right_gplot]);
var yScale_gplot=d3.scale.linear()
.range([dv.height_gplot-dv.pad_bottom_gplot,dv.pad_top_gplot]);
var xAxis_gplot=d3.svg.axis()
.scale(xScale_gplot)
.orient("bottom")
.tickFormat(d3.time.format("%b"));
var yAxis_gplot=d3.svg.axis()
.scale(yScale_gplot)
.orient("left");
var cScale_gplot=d3.scale.linear();
// Points
xScale_gplot.domain([d3.min(gdata,function(d){
return new Date(2014,+d.Month-1);
}),
d3.max(gdata,function(d){
return new Date(2014,+d.Month-1);
})]);
yScale_gplot.range([dv.height_gplot-dv.pad_bottom_gplot,dv.pad_top_gplot])
.domain([0,d3.max(gdata,function(d){
return +d.Ninjuredkilled;
})]);
cScale_gplot.range([135,0])
.domain([d3.min(gdata,function(d){
return +d.NightDay;
}),
d3.max(gdata,function(d){
return +d.NightDay;
})]);
var line=d3.svg.line()
.x(function(d) { return xScale_gplot(new Date(2014,+d.Month-1)); })
.y(function(d) { return yScale_gplot(+d.Ninjuredkilled); });
var Nhour=24;
for (var hh=0;hh<Nhour;hh++)
{
// Create New Data Set
var jj=0,mdata=[];
for (var ii=0;ii<gdata.length;ii++)
{
if (+gdata[ii].Hour==hh)
{
mdata[jj]={Month:+gdata[ii].Month,Ninjuredkilled:0};
jj++;
}
}
mdata.sort(compareMo);
// Plot line
dv.svg_gplot.append("path")
.datum(mdata)
.attr("class","gplot line hh"+hh.toString())
.attr("stroke","black")
.attr("d",line);
}
// Axes and Labels
dv.svg_gplot.append("g")
.attr("class","gplot x axis")
.call(xAxis_gplot)
.attr("transform","translate(0,"+(dv.height_gplot-dv.pad_bottom_gplot)+")");
dv.svg_gplot.append("text")
.attr("class","gplot x label")
.attr("x",dv.pad_left_gplot+(dv.width_gplot-dv.pad_left_gplot-dv.pad_right_gplot)/2.0)
.attr("y",dv.height_gplot-dv.pad_bottom_gplot+dv.pad_xaxis_gplot)
.text("Month of Year")
.attr("text-anchor","middle");
dv.svg_gplot.append("g")
.attr("class","gplot y axis")
.attr("transform","translate("+dv.pad_left_gplot+",0)")
.call(yAxis_gplot);
var xtext=dv.pad_left_gplot-dv.pad_yaxis_gplot,
ytext=(dv.height_gplot-dv.pad_bottom_gplot-dv.pad_top_gplot)/2.0+dv.pad_top_gplot;
dv.svg_gplot.append("text")
.attr("class","gplot y label")
.attr("x",xtext)
.attr("y",ytext)
.attr("text-anchor","middle")
.attr("transform","rotate(-90,"+xtext+","+ytext+")")
.text("Number of Injuries + Fatalities");
dv.svg_gplot.append("text") // To Fill in Later
.attr("class","gplot y label")
.attr("id","gplotylabel2")
.attr("x",xtext)
.attr("y",ytext+15)
.attr("text-anchor","middle")
.attr("transform","rotate(-90,"+xtext+","+ytext+")")
.attr("opacity","0.0")
.text("Per Million Population");
// Load Gridplot
reloadGplot(dv.tbname_set,dv.tflag_set,gdata);
// Annotate Gridplot
dv.svg_gplot.append("text")
.attr("class","gplot description")
.attr("x",dv.basepad*2)
.attr("y",dv.basepad*4)
.attr("text-anchor","start")
.text("...to highlight the corresponding line in this plot.");
/////////////////////////////////////////////////////////////////////
// CLOSE DATA FILES
/////////////////////////////////////////////////////////////////////
}); //gdata d3.csv("Clean_NYPD_Collisions_ByMonthOnlyHour_withSunlight_ALLBOROUGHS.csv"
}); //bdata d3.csv("Clean_NYPD_Collisions_ALLBOROUGHS.csv"
}); //odata d3.csv("Clean_NYPD_Collisions_OverallAvg_ByBorough.csv"
}); //nyc d3.json("nycbb_topojson.json"
/////////////////////////////////////////////////////////////////////
// FUNCTIONS
/////////////////////////////////////////////////////////////////////
//
// For sorting object by month
//
function compareMo(a,b) {
if (+a.Month < +b.Month) {return -1;}
if (+a.Month > +b.Month) {return 1;}
return 0;
}
//
// Calculating mean and standard deviation pre- and post-working group
//
function calcMean(data,bname,tflag) {
date_wkgrp=new Date(2014,1,15);
var mn_before=0,mn_after=0,sd_before=0,sd_after=0,
N_before=0,N_after=0;
for (var ii=0;ii<data.length;ii++)
{
if((new Date(+data[ii].Year,+data[ii].Month)) <= date_wkgrp)
{
switch(tflag) {
case 0: mn_before=mn_before+(+data[ii]["Ninjured"+bname])+(+data[ii]["Nkilled"+bname]); break;
case 1: mn_before=mn_before+(+data[ii]["NinjuredPer1000000"+bname])+(+data[ii]["NkilledPer1000000"+bname]); break;
}
N_before=N_before+1.0;
}
else
{
switch(tflag) {
case 0: mn_after=mn_after+(+data[ii]["Ninjured"+bname])+(+data[ii]["Nkilled"+bname]); break;
case 1: mn_after=mn_after+(+data[ii]["NinjuredPer1000000"+bname])+(+data[ii]["NkilledPer1000000"+bname]); break;
}
N_after=N_after+1.0;
}
}
mn_before=mn_before/N_before;
mn_after=mn_after/N_after;
for (var ii=0;ii<data.length;ii++)
{
if((new Date(+data[ii].Year,+data[ii].Month)) <= date_wkgrp)
{
switch(tflag) {
case 0: sd_before=sd_before+Math.pow(((+data[ii]["Ninjured"+bname])+(+data[ii]["Nkilled"+bname])-mn_before),2); break;
case 1: sd_before=sd_before+Math.pow(((+data[ii]["NinjuredPer1000000"+bname])+(+data[ii]["NkilledPer1000000"+bname])-mn_before),2); break;
}
}
else
{
switch(tflag) {
case 0: sd_after=sd_after+Math.pow(((+data[ii]["Ninjured"+bname])+(+data[ii]["Nkilled"+bname])-mn_after),2); break;
case 1: sd_after=sd_after+Math.pow(((+data[ii]["NinjuredPer1000000"+bname])+(+data[ii]["NkilledPer1000000"+bname])-mn_after),2); break;
}
}
}
sd_before=Math.sqrt(sd_before/(N_before-1.0));
sd_after=Math.sqrt(sd_after/(N_after-1.0));
return [{name:"Before",mn:mn_before,sd:sd_before},
{name:"After",mn:mn_after,sd:sd_after}];
};
//
// Update stroke width of picker borders
//
function restrokePickerBorder(ptype,th) {
d3.selectAll(".picker."+ptype).style("stroke-width",th+"px");
};
//
// Update stroke width of map borders
//
function restrokeMapBorder(br,th) {
d3.selectAll(".map.borough."+br).style("stroke-width",th+"px");
};
//
// Update map info
//
function updateMapData(br,op,tflag,data) {
var val=0,ind=0;
switch (br){
case "SI": ind=0; break;
case "MN": ind=1; break;
case "BK": ind=2; break;
case "QN": ind=3; break;
case "BX": ind=4; break;
}
switch(tflag) {
case 0: val=d3.round(data[ind].AvgInjuredKilledByMonth); break;
case 1: val=d3.round(data[ind].AvgInjuredKilledByMonthPer1000000Pop); break;
}
d3.selectAll(".map.borough."+br+".info").attr("opacity",op).text(val);
};
//
// Load Return to NYC button
//
function loadReturnButton(type) {
d3.selectAll(".map.return.text").attr("visibility",type);
d3.selectAll(".map.return.rect").attr("visibility",type);
};
//
// Update stroke width of return button borders
//
function restrokeReturnBorder(th) {
d3.selectAll(".map.return.rect").style("stroke-width",th+"px");
};
//
// Update title of webpage
//
function updateTitle(bname) {
d3.select("h1").html("PEDESTRIANS VERSUS CARS IN<br>"+bname);
};
//
// Update map annotation text
//
function updateMapAnnotation(itext) {
dv.svg_map.selectAll(".map.annotation")
.html("The colors in this map indicate the average number of pedestrian injuries and fatalities "+itext+"per month in each borough. Darker indicates a larger number. Click on a borough to update the plots with data for that borough only.");
};
//
// Update bar annotation text
//
function updateBarAnnotation(itext) {
dv.svg_bar.selectAll(".bar.annotation")
.html("The average number of pedestrian injuries and fatalities "+itext+"per month before and after the Vision Zero working group was established. The error bars are standard deviations. There does appear to be a decrease in injuries and fatalities after the working group was established, but a statistical analysis should be done.");
};
//
// Update grid annotation text
//
function updateGridAnnotation(itext) {
dv.svg_grid.selectAll(".grid.annotation")
.html("The area of the circles indicates the average number of injuries and fatalities "+itext+"per month for that month and time. A lighter color indicates more daylight. At 6pm, the larger circles are darker in color. This means that in months where it was darker at 6pm, there were more accidents compared to months where there was still daylight at 6pm. Therefore, the increase in accidents in the winter seems to be due, at least in part, to a decrease in daylight during those months.");
}
//
// Update map colors
//
function reloadMap(tflag,nyc,odata) {
var colorScale_map=d3.scale.linear();
colorScale_map.range([0,125])
.domain([d3.min(odata,function(d){
switch(tflag) {
case 0: return +d.AvgInjuredKilledByMonth; break;
case 1: return +d.AvgInjuredKilledByMonthPer1000000Pop; break;
}}),
d3.max(odata,function(d){
switch(tflag) {
case 0: return +d.AvgInjuredKilledByMonth; break;
case 1: return +d.AvgInjuredKilledByMonthPer1000000Pop; break;
}})]);
for (var ii=0;ii<5;ii++)
{
var br="";
switch (d3.round(odata[ii].Borough)){
case 0: br="SI"; bdata=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[0]); break;
case 1: br="MN"; bdata=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[1]); break;
case 2: br="BK"; bdata=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[3]); break;
case 3: br="QN"; bdata=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[4]); break;
case 4: br="BX"; bdata=topojson.feature(nyc,nyc.objects.nyc_geojson.geometries[2]); break;
}
var dval=0;
switch(tflag) {
case 0: dval=(+odata[ii].AvgInjuredKilledByMonth); break;
case 1: dval=(+odata[ii].AvgInjuredKilledByMonthPer1000000Pop); break;
}
dv.svg_map.selectAll("path.map.borough."+br)
.transition()
.duration(dv.time_load)
.style("fill","rgb("+d3.round(125-colorScale_map(dval))+","+
d3.round(255-colorScale_map(dval))+","+
d3.round(190-colorScale_map(dval))+")");
}
};
//
// Update bar chart
//
function reloadBar(bname,tflag,data) {
var xScale_bar=d3.scale.linear()
.range([0,dv.width_bar-dv.pad_right_bar-dv.pad_left_bar]);
var xAxis_bar=d3.svg.axis()
.scale(xScale_bar)
.orient("bottom");
var yScale_bar=d3.scale.ordinal()
.rangeRoundBands([dv.pad_top_bar,dv.height_bar-dv.pad_bottom_bar],0.3);
var yAxis_bar=d3.svg.axis()
.scale(yScale_bar)
.orient("left");
mnsd=calcMean(data,bname,tflag);
xScale_bar.domain([0,d3.max(mnsd,function(d){
return +d.mn+(+d.sd);
})]);
yScale_bar.domain(mnsd.map(function(d) { return d.name; } ));
dv.svg_bar.selectAll(".bar.rects")
.data(mnsd)
.transition()
.duration(dv.time_load)
.attr("width",function(d){
return xScale_bar(+d.mn);
});
dv.svg_bar.selectAll("line[id='barlinemain']")
.data(mnsd)
.transition()
.duration(dv.time_load)
.attr("x1",function(d)
{
return dv.pad_left_bar+xScale_bar(+d.mn-(+d.sd));
})
.attr("x2",function(d)
{
return dv.pad_left_bar+xScale_bar(+d.mn+(+d.sd));
});
dv.svg_bar.selectAll("line[id='barlineleft']")
.data(mnsd)
.transition()
.duration(dv.time_load)
.attr("x1",function(d)
{
return dv.pad_left_bar+xScale_bar(+d.mn-(+d.sd));
})
.attr("x2",function(d)
{
return dv.pad_left_bar+xScale_bar(+d.mn-(+d.sd));
})
.attr("y1",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2-yScale_bar.rangeBand()/4;
})
.attr("y2",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2+yScale_bar.rangeBand()/4;
});
dv.svg_bar.selectAll("line[id='barlinerght']")
.data(mnsd)
.transition()
.duration(dv.time_load)
.attr("x1",function(d)
{
return dv.pad_left_bar+xScale_bar(+d.mn+(+d.sd));
})
.attr("x2",function(d)
{
return dv.pad_left_bar+xScale_bar(+d.mn+(+d.sd));
})
.attr("y1",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2-yScale_bar.rangeBand()/4;
})
.attr("y2",function(d)
{
return yScale_bar(d.name)+yScale_bar.rangeBand()/2+yScale_bar.rangeBand()/4;
});
d3.selectAll(".bar.x.axis")
.transition()
.duration(dv.time_load)
.call(xAxis_bar);
var lopac="";
switch(tflag) {
case 0: lopac="0.0"; break;
case 1: lopac="1.0"; break;
}
d3.selectAll("#barylabel2")
.transition()
.duration(dv.time_load)
.attr("opacity",lopac);
};
//
// Update plot
//
function reloadPlot(bname,tflag,data) {
var xScale_plot=d3.time.scale()
.range([dv.pad_left_plot,dv.width_plot-dv.pad_right_plot]);
var yScale_plot=d3.scale.linear()
.range([dv.height_plot-dv.pad_bottom_plot,dv.pad_top_plot]);
var yAxis_plot=d3.svg.axis()
.scale(yScale_plot)
.orient("left");
xScale_plot.domain(d3.extent(data,function(d){
return new Date(+d.Year,+d.Month-1);
}));
yScale_plot.domain([0,d3.max(data,function(d){
switch(tflag) {
case 0: return +d["Ninjured"+bname]+(+d["Nkilled"+bname]); break;
case 1: return +d["NinjuredPer1000000"+bname]+(+d["NkilledPer1000000"+bname]); break;
}
})]);
// "Load" Points
d3.selectAll(".plot.points")
.data(data)
.transition()
.duration(dv.time_load)
.attr("cy",function(d)
{
switch(tflag) {
case 0: return yScale_plot(+d["Ninjured"+bname]+(+d["Nkilled"+bname])); break;
case 1: return yScale_plot(+d["NinjuredPer1000000"+bname]+(+d["NkilledPer1000000"+bname])); break;
}
});
// "Load" Lines
var line = d3.svg.line()
.x(function(d) { return xScale_plot(new Date(+d.Year,+d.Month-1)); })
.y(function(d) {
switch(tflag) {
case 0: return yScale_plot(+d["Ninjured"+bname]+(+d["Nkilled"+bname])); break;
case 1: return yScale_plot(+d["NinjuredPer1000000"+bname]+(+d["NkilledPer1000000"+bname])); break;
}
});
dv.svg_plot.selectAll(".plot.line")
.datum(data)
.transition()
.duration(dv.time_load)
.attr("d", line);
// Labels
d3.selectAll(".plot.y.axis")
.transition()
.duration(dv.time_load)
.call(yAxis_plot);
var xtext=dv.pad_left_plot-dv.pad_yaxis_plot,
ytext=(dv.height_plot-dv.pad_bottom_plot-dv.pad_top_plot)/2.0+dv.pad_top_plot;
var lopac="";
switch(tflag) {
case 0: lopac="0.0"; break;
case 1: lopac="1.0"; break;
}
d3.selectAll("#plotylabel2")
.transition()
.duration(dv.time_load)
.attr("opacity",lopac);
};
//
// Update grid
//
function reloadGrid(bname,tflag,data) {
var rScale_grid=d3.scale.sqrt();
var cScale_grid=d3.scale.linear();
rScale_grid.range([0,dv.maxr])
.domain([0,
d3.max(data,function(d){
switch(tflag) {
case 0: return +d["Ninjuredkilled"+bname]; break;
case 1: return +d["NinjuredkilledPer1000000"+bname]; break;
}
})]);
cScale_grid.range([135,0])
.domain([d3.min(data,function(d){
return +d.NightDay;
}),
d3.max(data,function(d){
return +d.NightDay;
})]);
// "Load" Points
dv.svg_grid.selectAll(".grid.points")
.data(data)
.transition()
.duration(dv.time_load)
.attr("r",function(d)
{
switch(tflag) {
case 0: return rScale_grid(+d["Ninjuredkilled"+bname]); break;
case 1: return rScale_grid(+d["NinjuredkilledPer1000000"+bname]); break;
}
})
.attr("fill",function(d){
return "rgb("+(135-d3.round(cScale_grid(+d.NightDay)))+","+
(206-d3.round(cScale_grid(+d.NightDay)))+","+
(250-d3.round(cScale_grid(+d.NightDay)))+")";
});
};
//
// Update grid plot
//
function reloadGplot(bname,tflag,data,classpick) {
var Nargs=arguments.length;
var xScale_gplot=d3.time.scale()
.range([dv.pad_left_gplot,dv.width_gplot-dv.pad_right_gplot]);
var yScale_gplot=d3.scale.linear()
.range([dv.height_gplot-dv.pad_bottom_gplot,dv.pad_top_gplot]);
var yAxis_gplot=d3.svg.axis()
.scale(yScale_gplot)
.orient("left");
xScale_gplot.domain([d3.min(data,function(d){
return new Date(2014,+d.Month-1);
}),
d3.max(data,function(d){
return new Date(2014,+d.Month-1);
})]);
yScale_gplot.domain([0,d3.max(data,function(d){
switch(tflag) {
case 0: if (bname.length==0) return +d["Ninjuredkilled"];
else return Math.max(+d["NinjuredkilledSI"],
+d["NinjuredkilledMN"],
+d["NinjuredkilledBK"],
+d["NinjuredkilledQN"],
+d["NinjuredkilledBX"]); break;
case 1: if (bname.length==0) return +d["NinjuredkilledPer1000000"];
else return Math.max(+d["NinjuredkilledPer1000000SI"],
+d["NinjuredkilledPer1000000MN"],
+d["NinjuredkilledPer1000000BK"],
+d["NinjuredkilledPer1000000QN"],
+d["NinjuredkilledPer1000000BX"]); break;
}
})]);
d3.selectAll(".gplot.y.axis")
.transition()
.duration(dv.time_load)
.call(yAxis_gplot);
var lopac="";
switch(tflag) {
case 0: lopac="0.0"; break;
case 1: lopac="1.0"; break;
}
d3.selectAll("#gplotylabel2")
.transition()
.duration(dv.time_load)
.attr("opacity",lopac);
// "Load" Points and Line
var line=d3.svg.line()
.x(function(d) { return xScale_gplot(new Date(2014,+d.Month-1)); })
.y(function(d) { return yScale_gplot(+d["Ninjuredkilled"]); });
var Nhour=24;
for (var hh=0;hh<Nhour;hh++)
{
// Create New Data Set
var jj=0,mdata=[];
for (var ii=0;ii<data.length;ii++)
{
if (+data[ii].Hour==hh)
{
switch(tflag) {
case 0: mdata[jj]={Month:+data[ii].Month,Ninjuredkilled:+data[ii]["Ninjuredkilled"+bname]}; break;
case 1: mdata[jj]={Month:+data[ii].Month,Ninjuredkilled:+data[ii]["NinjuredkilledPer1000000"+bname]}; break;
}
jj++;
}
}
mdata.sort(compareMo);
// Plot line
dv.svg_gplot.selectAll(".gplot.line.hh"+hh.toString())
.classed("highlight",function(d){
if (Nargs == 4) {return d3.selectAll(".grid.select."+classpick+".show").classed("hh"+hh.toString());}
else {return false;}
})
.datum(mdata)
.transition()
.duration(dv.time_load)
.attr("d",line);
// Jump highlighted line to front
d3.selectAll(".gplot.line.highlight")
.each(function() {
this.parentNode.appendChild(this);
});
}
};
</script>
<!------------------------------------------------------------------>
<!-- END BODY -->
<!------------------------------------------------------------------>
</body>
</html>
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment