假设我们有一个数据框geohash_df,共有两个字段:geohash、value。我们希望在地图上绘制geohash编码,并基于value填充不同的颜色。
library(geohash)
library(leaflet)
geohash_decode_df <- cbind(geohash_df, gh_decode(geohash_df$geohash)) %>%
mutate(lng1=lng-lng_error,
lat1=lat-lat_error,
lng2=lng+lng_error,
lat2=lat+lat_error)
pal <- colorNumeric(
palette = "OrRd",
domain = geohash_decode_df$value)
leaflet() %>%
addTiles(
'http://webrd0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}',
options=tileOptions(tileSize=256, minZoom=9, maxZoom=17, subdomains="1234"),
attribution = '© <a href="http://ditu.amap.com/">高德地图</a>',
group="高德地图"
) %>%
addRectangles(data=geohash_decode_df,
lng1=~lng1, lat1=~lat1,
lng2=~lng2, lat2=~lat2,
fillColor = ~pal(value),
fillOpacity = 0.8,
color="black",
opacity=1,
weight=1
)