这篇文章是介绍如何尽可能减少R的代码的编写,使用高德现成的可视化产品。这里是一篇介绍热力图的文章。
使用到的工具就是R和vscode。
第一步如何使用高德地图,肯定要用到高德地图的api!!!。至于如何申请,我前面已经介绍过了。可以查看以前的文章:
如何创建一个高德地图api
第二步就是打开vscode(下载地址为:https://code.visualstudio.com/ )
然后安装一个vscode插件。
第三步就是使用我写好的代码:
library(tidyverse)library(glue)#part 0gaode_api "你的key" # part 1if (!dir.exists("grid_heatmap")) { dir.create("grid_heatmap")}# part 2if (!file.exists("grid_heatmap/maps.js")) { maps_url "http://webapi.amap.com/maps?v=1.4.15&key={gaode_api}&") download.file(url = maps_url, destfile = "grid_heatmap/maps.js", mode = 'wb') }# part 3if (!file.exists("grid_heatmap/loca.js")) { loca_url "http://webapi.amap.com/loca?v=1.3.0&key={gaode_api}") download.file(url = loca_url, destfile = "grid_heatmap/loca.js", mode = "wb")}# part 4if (!file.exists("grid_heatmap/jquery.min.js")) { jquery_js_url "https://a.amap.com/Loca/static/dist/jquery.min.js" download.file(url = jquery_js_url, destfile = "grid_heatmap/jquery.min.js")}# part 5if (!file.exists("grid_heatmap/heatmap.html")) { grid_heatmap_html_url "https://gitee.com/yuanzhoulvpi/grid_heatmap_all/raw/master/grid_heatmap_html.html" download.file(url = grid_heatmap_html_url, destfile = "grid_heatmap/heatmap.html")}
其中part 0 是将你的key放到这个字符串里面
接下来的part 1、2、3、4、5都是创建一些文件,这些不用管,也不要动!!(只要改动那个高德api的key)结果在Rstudio的右下角可以看到这个文件树:
接下来,继续使用Rstudio创建一个数据。
test_data <- tibble(lng = rnorm(n = 20000, mean = 110, sd = 10), lat = rnorm(n = 20000, mean = 20, sd = 2), count = abs(rnorm(n = 20000, mean = 50000, sd = 3)))write.csv(test_data, file = "grid_heatmap/jsdata.csv")
运行完后,就可以发现在这个文件夹下又多了一个叫jsdata.csv的文件。
Rstudio这部分已经完成任务了,接下来打开通过vscode进入这个grid_heatmap文件夹。
将鼠标放在heatmap.html文件上,然后右键,
在联网的情况下,就可以看到打开一个浏览器,出现一个地图了。
是不是很简单,就可以完成一个高级的网格热图?
ctrl加鼠标就可旋转视图之类的。
Q:我该如何使用我的数据?
A:只要你的数据里面含有lng、lat、count这三列就行。lng, lat代表坐标,count代表数值,名字千万不要搞错了,我没有试过count为负数的,你可以尝试一下。注意数据保存为位置也很重要,一定要在这个文件夹下,名字也必须叫jsdata.csv !!!!!
最后,这个程序不是我写的,我搬运的,这个其实是高德地图可视化的一个教程,我的知识目前还不能让JavaScript读取本地csv文件。
封面展示的数据?
https://a.amap.com/Loca/static/mock/jsdata.csv
源码?
https://lbs.amap.com/api/loca-api/demos/gridlayer/grid_with_legend
后面会基于高德地图出一些地图的文章
高德地图肯定没问题
欢迎关注华东吴亦凡,解决你地图问题