ãã®èšäºã§ã¯ãã€ã³ã¿ã©ã¯ãã£ããªå°çèŠèŠåãæ§ç¯ããããã®8ã€ã®æãèå³æ·±ããèå³æ·±ããšæãããJavaScriptã©ã€ãã©ãªãŒã®äžè¬çãªæŠå¿µã説æããŸãã äžè¬ã«ããã®ãããªãœãªã¥ãŒã·ã§ã³ã¯çŸåšå€ããããç¹å®ã®ãããžã§ã¯ãã«æé©ãªãœãªã¥ãŒã·ã§ã³ãéžæããããšã¯ãå°ãªããšãæéå ã«å°é£ãªäœæ¥ã«ãªãããšããããŸãã ãã®åºçç©ã䜿çšããŠããã®ãããã¯ãç解ãå§ããã°ããã®äººã ã®ç掻ãå°ãªããšãå°ãç°¡çŽ åããããšããŸãã ã¡ãªã¿ã«ãããã¯ç§ã®æè¿ã®Onextrapixelã«é¢ããèšäºïŒ è±èªã®åæ ïŒãå°ãä¿®æ£ãããã®ã§ãã
念ã®ãããããã«æ確ã«ããŸããäžè¬ã«ãå°å³ãäœæããããã®JavaScriptã©ã€ãã©ãªã¯2ã€ã®ã¿ã€ãã«åé¡ã§ããŸãã åçŽã«ã 1ã€ä»¥äžã®ãªããžã§ã¯ãã®å°ççäœçœ®ã衚瀺ã§ãããã®ããããŸãã ãã®ãããªã¿ã¹ã¯ã§ã¯ãGoogle MapsãOpenStreetMapsãªã©ã®ãããããœãŒã¹ãšããŠäœ¿çšã§ããŸãã ååãšããŠããã®ãããªè§£æ±ºçã¯ååã«ããããããã®äœæ¥ã®çµæã¯ããã次ã®ãšããã§ãã
ãã1ã€ã®ã¿ã€ãïŒä»æ¥ã¯ããã«ã€ããŠã話ããããšæããŸãïŒã¯JavaScriptã©ã€ãã©ãªã§ããããã®å©ããåããŠã çŸããã€ã³ã¿ã©ã¯ãã£ãããããäœæããããšã§ããŒã¿ã®èŠèŠåãè¡ãããšãã§ããŸã ã ãããã¯ãç°ãªãå°ççå°åã®å€ã®éã®é¢ä¿ããŸãã¯ãªããžã§ã¯ãã®äœçœ®ã«å¯Ÿããçžå¯Ÿçãªåããªã©ã瀺ããŸãã -ããŒã¿åæãšããžãã¹ã€ã³ããªãžã§ã³ã¹ã®èŠ³ç¹ããéåžžã«éèŠãªããšãã¹ãŠã
ã€ã³ã¿ã©ã¯ãã£ããªèŠèŠåãããçšã®JavaScriptã©ã€ãã©ãª
amMapïŒamChartsããïŒ
amMapã¯ã amChartsããŒã ãéçºããããããæ§ç¯ããããã®ç¹å¥ãªJavaScriptïŒHTML5ïŒã©ã€ãã©ãªã§ãã å€éšã®äŸåé¢ä¿ãå¿ èŠãšãããçŸããã³ããã¬ã¹ãããã«ããããïŒãã€ã³ãïŒãã³ãã¯ã¿ãŒããããŒããããç°¡åã«äœæã§ããå€ãã®äŸ¿å©ãªã€ã³ã¿ã©ã¯ãã£ãæ©èœããµããŒãããŸãã
ç¹ã«ãamMapã䜿çšãããšãããªã«ããŠã³ã䜿çšããŠãããã®1ã€ãŸãã¯å¥ã®éžæããéšåã«ç°¡åã«ãçªå ¥ãããããšãã§ããŸãã
amMapãéå§ããã«ã¯ããã€ããªãå«ãZIPãã¡ã€ã«ãããŠã³ããŒãããå¿ èŠããããŸãã ãšããã§ãæ¢ã«ãµããŒããããŠããå圢åŒïŒJavaScript / SVGïŒã§455æã®ã«ãŒããå«ãŸããŠããŸãã amMap ã®ããã¥ã¡ã³ãã¯ããã»ã©å€§ãããªãã倧éšåã¯äžé£ã®è³ªåãšåçã«åž°çããŸãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒãããã
ã©ã€ã»ã³ã¹ïŒç¡æïŒãã©ã³ãã«ãŒãïŒãŸãã¯ææïŒ140ãã«ããïŒã
AnyMapïŒAnyChartããïŒ
AnyMapã¯ã AnyChartã«ãã£ãŠäœæããã人æ°ã®ããJavaScriptïŒHTML5ïŒããŒã¿èŠèŠåã©ã€ãã©ãªã®1ã€ã§ãã amMapã®å Žåã®ããã«ããã«ãã䜿çšããŠããããäœæããã®ã«å€ãã®åŽåã¯å¿ èŠãããŸããããŸããå€éšãªãœãŒã¹ããµãŒãããŒãã£ã©ã€ãã©ãªïŒjQueryãªã©ïŒãæ¥ç¶ããå¿ èŠããããŸããã AnyMapã¯ãå¿ èŠãªã·ãªãŒãºã®ãã¹ãŠã®åºæ¬ã¿ã€ãïŒã³ããã¬ã¹ãããã«ãããããã³ãã¯ã¿ãŒããããŒïŒããµããŒãããŠããŸãã
AnyMapã®äž»ãªã€ã³ã¿ã©ã¯ãã£ãæ©èœã«ã¯ãåã ã®ãšãªã¢ã®ãã詳现ãªèª¿æ»ã®ããã®ããªã«ããŠã³ãã€ãã³ããåŠçããããã®ã€ãã³ãã¢ãã«ïŒãŠãŒã¶ãŒã€ã³ã¿ã©ã¯ãã£ãæ©èœïŒãæå®ãããèšå®ã«åŸã£ãŠããããèªåçã«ãã€ã³ãããããã®ã«ã©ãŒã¹ã±ãŒã«ãå«ãŸããŸãã
å°ãå ãèŠãŠãç§ã®æèŠã§ã¯ãAnyMapã¯amMapãHighmapsãããD3ã«äŒŒãŠãããšèšããŸãã ããã¯ããããã¯ã¹åããœãªã¥ãŒã·ã§ã³ã®æ©èœãçµã¿åããããã®ã§ãããåæã«æ¡åŒµæ§ãé«ãéçºè ã«ãã£ãŠå¶åŸ¡ããããããããŸããŸãªèŠçŽ ãè¿œå ãŸãã¯å€æŽããŠèŠèŠåãå®å šã«ã«ã¹ã¿ãã€ãºããç¬èªã®ããããç°¡åã«äœæã§ããŸãã
AnyMapãã€ããªã¯ZIPãã¡ã€ã«ã§ãããå€ãã®äŸãå«ãŸããŠããŸããAnyChartã®CDNã«ã¯ãGeoJSONãTopoJSONãSHPãSVGãªã©ã®ããŸããŸãªåœ¢åŒã®æ°çŸã®ãããããããŸãã ã¡ãªã¿ã«ããã®ã©ã€ãã©ãªã«ã¯è±å¯ãªããã¥ã¡ã³ããšAPIã®è©³çŽ°ãªèª¬æããããããªãç°¡åã«ç解ã§ããå€ãã®ãµã³ãã«ãå«ãŸããŠããŸãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒãããã
ã©ã€ã»ã³ã¹ïŒç¡æïŒãã©ã³ãã«ãŒãïŒãŸãã¯ææïŒ79ãã«ããïŒã
D3.jsïŒãã€ã¯ãã¹ããã¯ããïŒ
D3.jsã¯ã匷åãªãªãŒãã³ãœãŒã¹ããŒã¿èŠèŠåã©ã€ãã©ãªã§ãã èšåãããŠããä»ã®JavaScriptã©ã€ãã©ãªãšã¯ç°ãªããD3ã¯åµé æ§ãæ倧éã«çºæ®ã§ãããã¬ãŒã ã¯ãŒã¯ã§ãã ããã§ã¯ãã€ã³ã¿ã©ã¯ãã£ããããã®äœæã¯ãããšãã°amChartsãAnyChartããŸãã¯Highchartsã®ãœãªã¥ãŒã·ã§ã³ã»ã©æçœã§ã¯ãããŸãããã
ç¹ã«ãå³ã®ããã«ãã®ãããªçŽ æŽãããã€ã³ã¿ã©ã¯ãã£ãããããäœæããã«ã¯ãããªãå€æ°ã®è³æãåŠç¿ããå¿ èŠããããŸãã ç§ã¯èšããªããã°ãªããªãããããã¯ããã ãã®äŸ¡å€ãããããªããªããæçµçã«ã¯æ¬åœã«é©ãã¹ãããªãªãžãã«ã®èŠèŠåãè¡ãããšãã§ããããã ã
å®éãD3ã«ã¯ãåäœã®å®å šãªã«ã¹ã¿ãã€ãºãã€ãã³ãã¢ãã«ãªã©ãå€ãã®æ©èœããããŸãã äžè¬çã«ãããã¯Webã¢ããªã±ãŒã·ã§ã³ã®çæ³çãªãœãªã¥ãŒã·ã§ã³ã§ãããšèšããŸãã æ®å¿µãªãããD3ã¯ç¬èªã®ã«ãŒããæäŸããŠããŸããã ããã¯ããªãŒãã³ãœãŒã¹ã§åå¥ã«æ€çŽ¢ããå¿ èŠãããããšãæå³ããŸãããããã¯ä»ã®ãšãã倧ããªåé¡ã§ã¯ãããŸããã
D3ã«ã¯ãã®ãããªããã¥ã¡ã³ãã¯ãããŸããããããæžãããAPIãšå€ãã®ç°ãªããã¥ãŒããªã¢ã«ãäŸããã®ä»ã®æçšãªè³æãæåéãã€ã³ã¿ãŒãããå šäœã«ãããŸãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒãããã
ã©ã€ã»ã³ã¹ïŒç¡æã
Google GeoChartsïŒGoogleããïŒ
巚倧ãªGoogleã«ã¯ãããŒã¿èŠèŠåçšã®ç¬èªã®JavaScriptã©ã€ãã©ãªã§ããGoogle ChartããããŸãã ãŸããããã§ã¯ãžãªãã£ãŒããšåŒã°ããã€ã³ã¿ã©ã¯ãã£ããªèŠèŠåããããæ§ç¯ããå¯èœæ§ãå«ãŸããŠããããããªããžã§ã¯ãã®å Žæã衚瀺ããããã ãã«å¿ èŠãªéåžžã®ããããšæ··åããªãããã§ãã
Google Geochartsã«ã¯å°å³ã1ã€ãããªããããã¯äžçã®å°å³ã§ãã ãã ãããºãŒã ã䜿çšããŠçŠç¹ãåãããé åãéžæã§ããŸãã
æ®å¿µãªãããããŒã«ã«APIã¯ã¹ã¯ããŒã«ãã¹ã±ãŒãªã³ã°ïŒãºãŒã ïŒããã©ãã°ã¢ã³ãããããïŒãã©ãã°ïŒããµããŒãããŠããŸããã ãŸããGoogleã¯ãã³ããã¬ã¹ãšããã«ä»¥å€ã®ãããçšã®ä»ã®ã¿ã€ãã®ã·ãªãŒãºãæäŸããŠããŸããã ãã€ãŠããããã®æ¬ ç¹ã¯ç§ãæ²ããŸããŠãç©ããã«èšã£ãããããã¯ãŸãè¯å®çãªç¹ã§ãã£ãïŒçµå±ãç§ã¯ä»ã®ããããçš®é¡ã®ã©ã€ãã©ãªãæ€çŽ¢ããç 究ãå§ããªããã°ãªããªãã£ãããããŠä»ãç§ã¯ããªããšãã®ãã€ã¯ãã¹ã¿ãã£ã®çµæãå ±æããŠããã
äœããã®æ¹æ³ã§ãGeoChartsã¯ã倧èŠæš¡ã§è€éãªæ©èœãå¿ èŠãšããªãããç¹å¥ãªçŸãããšã«ã¹ã¿ãã€ãºã®ä»£ããã«äž»ã«é床ãšå®å®æ§ãè¿œæ±ãã人ã ãšãããžã§ã¯ãã«ãšã£ãŠåªãããœãªã¥ãŒã·ã§ã³ã§ãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒãããã
ã©ã€ã»ã³ã¹ïŒç¡æã
HighmapsïŒHighsoftããïŒ
Highmapsã¯ãHighsoftã®äººæ°ã®ããéçºã©ã€ãã©ãªã§ããHighchartsãšHighstockã®ã効ãã§ãã ãã®äž»ãªå©ç¹ã¯ããã¹ãŠã®å©ç¹ãåãããªãŒãã³ãœãŒã¹ãå°åãé«éã®ã¬ã³ããªã³ã°é床ãããªã«ããŠã³ãªã©ã®å¹ åºãã€ã³ã¿ã©ã¯ãã£ãæ©èœã§ãã
Highmapsã§ãµããŒããããŠããã·ãªãŒãºã«ã¯ãã³ããã¬ã¹ãšããã«ããããŸãã ããã«ããã®ã©ã€ãã©ãªã䜿çšããŠãéè·¯ãæ²³å·ãããã³ã³ãã¯ã¿ã瀺ãç·ãæç»ã§ããŸãã ããã§ã¯ãåãamMapãAnyMapã®ããã«ãããŒã«ãŒããäœæããã®ã¯ç°¡åã§ã¯ãããŸãããã
ãŸããHighchartsãHighmapsãjQueryãªãã§ã¯æ©èœããªãããããã®äŸåé¢ä¿ãæ¥ç¶ããå¿ èŠããããŸãïŒãŸãã¯ããã¡ãããããŒã¿èŠèŠåçšã®å¥ã®ã©ã€ãã©ãªãæ¢ãå¥ã®ãªãã·ã§ã³ããããŸã-ããïŒã
ãã©ã¹é¢ãšããŠãHighmapsã«ã¯SVGããã³GeoJSON圢åŒã®å€æ°ã®ãããããããŸãã ãŸããè±å¯ãªããã¥ã¡ã³ããçšæãããŠãããããããçš®é¡ã®èšå®ãè¿ éãã€é©åã«ææ¡ã§ããŸãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒ jQueryã
ã©ã€ã»ã³ã¹ïŒç¡æïŒãã©ã³ãã«ãŒãïŒããã³ææïŒ390ãã«ããïŒã
jQuery MapaelïŒVincent Brouteã«ããïŒ
jQuery Mapaelã¯ãåçãã¯ãã«ããããäœæããããã®ãã1ã€ã®éåžžã«é©åãªãåªãããªãŒãã³ãœãŒã¹ã©ã€ãã©ãªã§ãã jQueryãšRaphael JSã«åºã¥ããŠããããããµããŒãããã³ããã¬ã¹ãããã«ããŸãã¯ã³ãã¯ã¿ããããæ§ç¯ããéã«ã¯ããããã®äŸåé¢ä¿ã«çæããå¿ èŠããããŸãã
ããã«äœ¿çšã§ããäžé£ã®ããããMapael ãªããžããªã«ãããŸã ã APIã®ããã¥ã¡ã³ããšèª¬æã¯1ã€ã®èšäºã«ãŸãšããããŠããŸãããççŽã«èšã£ãŠã ãã®è©³çŽ°ãªãã¥ãŒããªã¢ã«ã䜿çšããã°ããã®ã©ã€ãã©ãªã䜿ãå§ããã®ã¯éåžžã«ç°¡åã§ãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒ jQueryããã³Raphaelã
ã©ã€ã»ã³ã¹ïŒç¡æã
jVectorMapïŒããªã«ã»ã¬ãããäœïŒ
ã€ã³ã¿ã©ã¯ãã£ããããçšã®jVectorMapã©ã€ãã©ãªã¯ãªãŒãã³ãœãŒã¹ã§ãããèšäºã«ãªã¹ããããŠããä»ã®å€ãã®ãã®ãåæ§ã§ãã jQueryãªãã§ã¯æ©èœããŸããã ãã®ãããªå€éšäŸåé¢ä¿ã«ããããã®ïŒãŸãã¯ä»ã®ïŒã©ã€ãã©ãªãããŸãäžè¬çã§ã¯ãªãããã«æãããããããŸããããæè¿ã§ã¯jQueryããµã€ãã®JavaScriptã©ã€ãã©ãªã®äžã§1äœã«ãªãã人æ°ãããã³åžå Žã·ã§ã¢ã«ãã£ãŠã
æ®å¿µãªãããããã§å©çšã§ããã·ãªãŒãºã®çš®é¡ã¯ããã»ã©å€§ãããããŸãããjVectorMapã§ã¯ã³ããã¬ã¹ããããšããŒã«ãŒãããã®ã¿ãæäŸãããŸãããåæã«-ãã®ã©ã€ãã©ãªã«åœç¶ã®ããš-ãããã¯éåžžã«é©åã«äœæãããŸãã ããã«ãããã§ã¯ããŒã«ãŒãšããŠä»»æã®åçã䜿çšã§ããŸãããŸããããªã«ããŠã³ãä»ã®å€ãã®ã€ã³ã¿ã©ã¯ãã£ããªæ©èœããããŸãã
JVectorMapã«ã¯APIã®ããªãå°ããªèª¬æããããå°ãªããšãç§ã«ãšã£ãŠã¯ãéåžžã®åœ¢åŒã®ããã¥ã¡ã³ãã¯ãããŸããã ãã ããå°ãããªãããéåžžã«äŸ¿å©ãªå ¥éãã¥ãŒããªã¢ã«ããããŸãã ã«ãŒãã¯äœ¿çšãããŸãããGeoJSON圢åŒã®ã¿ã§ãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒ jQueryã
ã©ã€ã»ã³ã¹ïŒç¡æããã³ææïŒ39ãã«ããïŒã
ã«ãŒãã°ã©ãïŒã°ã¬ãŽãŒã«ã»ã¢ã€ã·ã¥äœïŒ
Kartographã¯ã ããã«ä»éãããã¹ãŠã®å©ç¹ãåããå¥ã®ãªãŒãã³ãœãŒã¹ãœãªã¥ãŒã·ã§ã³ã§ãã ãã®ã©ã€ãã©ãªã¯ã圱ããŒãããªã©ã®è±å¯ãªèŠèŠå¹æãç¹åŸŽã§ãã
ãŸããèå³æ·±ãã®ã¯ãåŸæ¥ã®ã³ããã¬ã¹ããã³ããã«ã¿ã€ãã®ã·ãªãŒãºã«å ããŠã3DåïŒãŸãã¯ããããã3DããŒïŒãããããšã§ãã
ã«ãŒãã°ã©ãã«ã¯æ¢è£œã®ãããã®ã³ã¬ã¯ã·ã§ã³ã¯ãããŸããã ãã ããã©ã€ãã©ãªã¯SVG圢åŒã®ã«ãŒãã§åäœããŸãã ãŸããå°å³ãäœæããããã®Kartograph.pyãŠãŒãã£ãªãã£ãæäŸããŠããŸãã
Kartographã«ã¯äŸåé¢ä¿ããããRaphael JSïŒæç»ãšã³ãžã³ãšããŠäœ¿çšïŒããã³jQueryãªãã§ã¯æ©èœããŸãããããã®ã©ã€ãã©ãªã«ããããããã®äœæããã»ã¹ãéåžžã«ç解ãããããåé¡ãªãã1ã€ã®èšäºã«ãŸãšãããããã®ã©ã€ãã©ãªã®APIã®ããã¥ã¡ã³ããšèª¬æãéåžžã«ç°¡åã«ãªããŸããããžã§ã¯ãã«é©ããã€ã³ã¿ã©ã¯ãã£ããªå°å³ãååŸãããšäŸ¿å©ã§ãã
APIã®èª¬æïŒ ã¯ã ã
äŸåé¢ä¿ïŒ jQueryããã³Raphaelã
ã©ã€ã»ã³ã¹ïŒç¡æã
ãããã«
ã€ã³ã¿ã©ã¯ãã£ããããã䜿çšããŠããŒã¿ãèŠèŠåããããã«ãªã¹ãããJavaScriptã©ã€ãã©ãªã¯ãã¹ãŠãã¯ãã¹ãã©ãŠã¶ã§ãã ïŒãŸãã21äžçŽã«ã¯ãããããä»ã®æ¹æ³ã¯ãããŸããã§ãããïŒInternet Explorer 6ãªã©ã®å€ããã©ãŠã¶ãŒããµããŒããããã®ããããŸãïŒãã ãã2010幎æ«ã«ã¯ããããããã«éèŠã§ã¯ãªããªãããšãé¡ã£ãŠããŸãïŒ xãïŒ
ç§ãèšåãããã¹ãŠã®ç¡æã®ã©ã€ãã©ãªã¯ãã€ã³ã¿ã©ã¯ãã£ããªããããäœæããã®ã«éåžžã«åªããŠããŸãã ãããäžæ¹ã§ã圌ãã¯åæ¥çãªãµããŒãã®ãããªå¹ åºããµããŒããæäŸããŠããããæ£çŽãªãšããã圌ãã¯ã«ã¹ã¿ãã€ãºã«ããã»ã©åŒ·ããããŸããïŒãã¡ãããD3ãé€ããŠïŒã
åæ¥ã©ã€ãã©ãªãšããã°-ãšããã§ãéåžžã¯éåæ¥çããã³å人çãªç®çã§ç¡æã§äœ¿çšã§ããŸã-è±å¯ãªããã¥ã¡ã³ããšAPIã®èª¬æãããã³ããããçš®é¡ã®åªããJavaScriptã®äŸ/ãã¢ã®è¯è³ªãªããŒã«ã®ããã«AnyMapãšHighmapsã«èšåãããããããŸããåæ¹åæ§ã
ãæž èŽããããšãããããŸããã ãã®èšäºããã€ã³ã¿ã©ã¯ãã£ããªããããä»ããŠããŒã¿ãèŠèŠåããããã«èšèšããããããJavaScriptã©ã€ãã©ãªã®æ¬è³ªãçŽ æ©ãææ¡ããããšãç®æšãšãã人ã«åœ¹ç«ã€ããšãé¡ã£ãŠããŸãã ã³ã¡ã³ãã§ããªãèªèº«ã®èããçµè«ãç解ããããŠãã¡ããããªãã®ãæ°ã«å ¥ãã®ã©ã€ãã©ãªã®ååãå ±æããŠãã ãããçªç¶ãããªãã®æèŠã§ã¯ãç§ã¯ãã®èšäºã§ãããã«ãµãããããªãã
ã¿ãªãããè¯ãäžæ¥ãïŒ