Leaflet って何?白地図が書けるってほんと?白地図のデータはどこから手に入れるの?ライセンスは?調べてみました!
Leaflet って何?
Leaflet はモバイルフレンドリーなインタラクティブマップのための JavaScript ライブラリです。
白地図が書けるってほんと?
Leaflet では GeoJSON 形式のデータを描画できます。つまり GeoJSON 形式の白地図さえ入手できれば白地図を書くことができます。
ITダッシュボードで表示されている地図は Leaflet で描画されていて、通常の地図画像のレイヤーに白地図のレイヤーが重なっています。
白地図のデータはどこから手に入れるの?
先ほどのページで Chrome の Developer Tools を開いて様子を見てみると、色々それらしい通信をしていることが見て取れます。どうやら都道府県の GeoJSON は https://www.itdashboard.go.jp/js/data/prefectures.geojson
から取得しているようです。
それを使って白地図を描画するコードです。
<!doctype html> <html lang="ja"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Learning Leaflet</title> <link rel="stylesheet" href="https://unpkg.com/leaflet@1.5.1/dist/leaflet.css" integrity="sha512-xwE/Az9zrjBIphAcBb3F6JVqxf46+CDLwfLMHloNu6KEQCAWi6HcDUbeOfBIptF7tcCzusKFjFw2yuvEpDL9wQ==" crossorigin=""/> <style> #mapid { height: 360px; } </style> </head> <body> <div id="mapid"></div> <div>出典:<a href="https://www.itdashboard.go.jp">ITダッシュボード</a></div> <!-- Make sure you put this AFTER Leaflet's CSS --> <script src="https://unpkg.com/leaflet@1.5.1/dist/leaflet.js" integrity="sha512-GffPMF3RvMeYyc1LWMHtK8EbPv0iNZ8/oTtHPx9/cc2ILxQ+u905qIwdpULaqDkyBKgOaB57QTMg7ztg8Jm2Og==" crossorigin=""></script> <script> let mymap = L.map('mapid').setView([36.29667, 137.61629], 5); fetch('https://www.itdashboard.go.jp/js/data/prefectures.geojson') .then(resp => resp.json()) .then(json => { L.geoJSON(json).addTo(mymap); }) </script> </body> </html>
ライセンスは?
こんな便利な白地図データ、使わない手はありませんね。気になるライセンスはどうなっているのでしょうか?
ITダッシュボードの利用規約によれば、出典の記載などのルールに従うことで自由に使うことができます。CC BY での利用もできます。
オチは?
先ほどまで見えていたITダッシュボードですが、2019-05-21 01:20:00 現在、503 Service Unavailable となってしまいました。
調子に乗りすぎたのでしょうか、たまたまでしょうか。たまたまであることを祈ります。
(10分後)
アクセスできるようになりました。たまたま落ちていたのでしょう。よかったよかった。