leaflet

更新をさぼっていますがもう leaflet 1.1.0 です。

leafletとは

leafletOpenStreetMap を使うためのJavaScriptライブラリです。

上のような地図をページに埋め込むには,まず,ページの頭書き(head要素)に次のように書いておきます:

<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css">
<script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>

そして,地図を入れたいところに次のように書きます:

<div id="map" style="width:100%; height:300px"></div>
<script>
var map = L.map('map').setView([34.7468,136.5248], 15);
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
L.marker([34.7468,136.5248]).addTo(map)
    .bindPopup('ここにいます')
    .openPopup();
</script>

ここで [34.7468,136.5248] は緯度・経度です。15 は大きな数にするほど拡大した地図になります。

Rでleafletを使う

Rの leaflet パッケージを使えばRから上のような地図を簡単に書けます。

まず,CRANからパッケージをインストールし,読み込みます:

install.packages("leaflet")
library(leaflet)

上と同様の地図を描くには,Rのコンソールに次のように打ち込みます:

m = leaflet()
m = addTiles(m)
m = addMarkers(m, lat=34.7468, lng=136.5248, popup="ここにいます")
m

同じことですが,次のようなパイプ記法も使えます:

m = leaflet() %>%
  addTiles() %>%
  addMarkers(lat=34.7468, lng=136.5248, popup="ここにいます")
m

さらに詳しい説明が こちら にあります。