本文小编为大家详细介绍“R语言 leaflet怎么实现热力密度图”,内容详细,步骤清晰,细节处理妥当,希望这篇“R语言 leaflet怎么实现热力密度图”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
最近在Stack Overflow上面发现了leaflet包的一个插件leaflet.esri包,结合leaflet可以在R语言中提供非常完美的热力密度图解决方案,顿时觉得发现了新大陆,立马分享给大家具体的实现思路。
library("leaflet")library("leafletCN")library("leaflet.extras")library("xlsx")
mydata <- read.xlsx( "D:/Python/File/Cities2015.xlsx", sheetName="Sheet1", header=T, encoding='UTF-8', stringsAsFactors=FALSE, check.names=FALSE ) %>% na.omit()
1、默认状态下热力图效果:
leaflet(mydata) %>%
addTiles() %>%
addHeatmap(lng = ~lon, lat = ~lat, radius = 8)
2、通过addTiles加载高德地图:
leaflet(mydata) %>%
addTiles( 'http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}',
options = tileOptions(tileSize=256,minZoom=4,maxZoom=17),
attribution='© <a href="http://ditu.amap.com/">高德地图</a>',
) %>%
addHeatmap(lng = ~lon, lat = ~lat, radius = 8)
3、这里可以借用leafletCN::amap函数简化高德地图的调用,该函数封装了高德地图api的接口
leaflet(mydata) %>% leafletCN::amap() %>%
addHeatmap(lng = ~lon, lat = ~lat, radius = 8)
4、当然腾讯地图的调用也是可以支持的:
leaflet(mydata) %>%
addTiles( 'http://rt{s}.map.gtimg.com/realtimerender?z={z}&x={x}&y={y}&type=vector&style=0',
options = tileOptions(tms=TRUE, tileSize=256, minZoom=4, maxZoom=17, subdomains="0123"),
attribution = '© <a href="http://map.qq.com/">腾讯地图</a>'
) %>% setView(116.40,39.90, zoom = 4) %>%
addHeatmap(lng = ~lon, lat = ~lat, radius = 8)
以上参数中tileSize控制默认显式地图窗口面积,minZoom代码缩放的最大级别(比例尺越大),同理maxZoom=17代表缩放的最小级别(比例尺越小)。
读到这里,这篇“R语言 leaflet怎么实现热力密度图”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/u/3335309/blog/4391294