Mic*_*ith 5 html r knitr r-leaflet
几天来,基本图层图块“OSM”和“Stamen.TonerLite”(我已经使用了一年多作为我的地图的标准图块)没有正确显示 - 即不再可能在它们之间切换.
只要地图在 RStudio 和 RStudio Viewer 中显示,一切都可以完美运行。但是,一旦我在浏览器中打开 .Rmd 输出的相应 .html 文件(我尝试了 chrome、internet explorer、edge 和 firefox),就不可能在磁贴之间切换了。要么显示“OSM”,我不能切换到“Stamen.TonerLite”,反之亦然。
我尝试了不同的图层瓷砖或超过 2 层瓷砖,但结果相同。即使我切换到其他图层,也始终只有一层图块可见。
我的案例的可重现示例:
---
title: "stackoverflow"
author: " "
date: " "
output: html_document
---
```{r, echo = T}
library(leaflet)
m <- leaflet() %>%
addTiles(group = "OSM") %>%
addProviderTiles("Stamen.TonerLite") %>%
addLayersControl(baseGroups = c("OSM", "Stamen.TonerLite")) %>%
addCircleMarkers(lat = 47.4,
lng = 9.37,
radius = 10,
fillOpacity = 1.0)
m
```
Run Code Online (Sandbox Code Playgroud)
试试这个,重点是将两个提供者图块通过管道传递给 addTiles() 参数
---
title: "stackoverflow"
author: " "
date: " "
output: html_document
---
```{r, echo = T}
library(leaflet)
m <- leaflet() %>%
addTiles() %>%
addProviderTiles(providers$OpenStreetMap, group = "OSM") %>%
addProviderTiles(providers$Stamen.TonerLite, group = "Toner Lite") %>%
addLayersControl(baseGroups = c("OSM", "Toner Lite")) %>%
addCircleMarkers(lat = 47.4,
lng = 9.37,
radius = 10,
fillOpacity = 1.0)
m
```
Run Code Online (Sandbox Code Playgroud)