来源 | 数据人网 文 | 薛丽丹
leaflet是来构建交互式地图JavaScript库。RStudio发布了一些允许在R建立这些地图的包,我们可以利用leaflet做一些很酷炫的东西。本文用的数据为五个不同经纬度的城市和所在地发生的贿赂和自杀案件案件。
数据表示:
接下来我们将展示一下如何用R做出提供信息的交互式地图:
1、输出带有标记的地图
我们需要载入leaflet和magrittr包,首先创建江苏的地图。第一,,我们通过调用leaflet()来生成一个地图的小部件,然后,通过addTiles()向地图添加层。在默认情况下,将使用公开街道地图信息,然后使用setView()函数设置所需的经度和纬度,和缩放级别。最后通过addMarker()函数在我们所需的位置上做标记并给出弹出信息。
如上图所示,输出的地图中显示就是我们所设置的具体地方,如果单击蓝色标记,你将看到“jiangsu”的文本弹窗。当然我们可以设置不同的定制标记。例如,addCircleMarkers()允许您使用圆形状的标记,而不是默认的。
2、输出圆圈标记的的地图
3、建立多位置标注的地图
在上图中,,点击每一个标记都将将弹出在特定位置发生的事件,可以看到是贿赂或是自杀。
4、不同事件的分区标注地图
每个圆圈中的数代表事件发生的总数。事件发生较多的被标记成了绿色,而红圆圈和蓝色圆圈分别代表了发生贿赂和自杀。另外,当你点击一个集群,地图会自动放大区域,分割成更小的集群或显示单个事件。
参考链接:http://datascienceplus.com/building-interactive-maps-with-leaflet/
原文链接:http://shujuren.org/article/144.html