为了添加一个 poligon(例如一个圆圈),您应该:
- 转到实际地图的 html 页面的位置(您应该在浏览器中看到该位置)并右键单击打开它,最好使用记事本 ++
-
寻找:
var map = L.map(spec.dom, {
全屏控制:真
}).setView(spec.center, spec.zoom);
if (spec.provider){
L.tileLayer.provider(spec.provider).addTo(map)
} else {
L.tileLayer(spec.urlTemplate, spec.layerOpts).addTo(map)
}
然后您可以使用以下代码添加一个漂亮的圆圈,(不要忘记保存文件):
L.circle([29.7601927,-95.3693896],7200,{color:'red'}).addTo(map).bindPopup('some thing').addTo(map)
如需了解更多信息,请参阅 http://leafletjs.com/reference.html 中的传单 API
顺便说一句,rmaps 只是 R 和传单的接口,如果你想创建真正疯狂的东西,你应该习惯打开 html 文件并从传单 API 添加 java 脚本代码,人们创造了令人惊叹的插件,还有更多只是添加多边形,很酷的例子见:
http://leafletjs.com/plugins.html
我也很喜欢这个:
http://threatwiki.thesentinelproject.org/iranvisualization
只是添加一些关于 rMaps 如何工作的额外信息(rCharts 也是如此)
rMaps 所做的只是创建 javascript 代码,地图的构建由您的 Web 浏览器完成,这意味着如果您将转到安装 rmaps 的库并将其复制到另一台计算机没有 R,html 文件将完美运行,这意味着您可以创建一个 rMap,然后在 html 文件中手动添加任何 rMaps 不支持的传单 API 中的元素,正如我所解释的(我展示了如何为“圆”做这件事)。
-
对于闪亮的应用程序,您无法手动添加内容,因此您必须确保 rmap 支持 API 中的元素。为了了解支持 API 的哪些元素,首先创建一个地图:
地图
然后查看“地图”的所有元素,并将其与传单 API 进行比较。
例如,您可以在 API 中找到标记创建命令:
http://leafletjs.com/reference.html#marker(来自小册子 API),由以下人员创建:
L.marker([51.5, -0.09]).bindPopup('Hi. I am a popup').addTo(map);
在 rMaps 中有一个等价物:
map$marker(
c(51.5, -0.09),
bindPopup = 'Hi. I am a popup'
)
你感兴趣的leaflet API中的每个元素一步一步去,如果不存在,你可以在Github中请求ramnath添加它https://github.com/ramnathv/rMaps/pulls,
或由您自己创建一个在 R 代码中执行此操作的函数。