【发布时间】:2020-05-12 04:59:31
【问题描述】:
在下面显示的小例子中,我有两个与地图中每个国家(多边形)相关的特征,即:randomA、randomB。每个特征都有自己的图例,所以我武装了一个名为“randomA”的组,其中包含用特征 randomA 着色的多边形及其相应的图例。我对组“randomB”做了同样的事情。描绘地图时,传单正确显示或隐藏特征“randomA”和“randomB”的多边形。然而,图例总是堆叠在右下角。 这是代码:
library(rgdal)
library(leaflet)
# From http://data.okfn.org/data/datasets/geo-boundaries-world-110m
countries <- readOGR("json/countries.geojson")
n <- nrow(countries)
# Add two random fields
set.seed(15)
countries@data$randomA <- rnorm(n, 1000, 250)
countries@data$randomB <- rnorm(n, 10000, 3000)
map <- leaflet(countries) %>% addTiles()
pal <- colorNumeric(
palette = "YlGnBu",
domain = countries$randomA
)
map <- map %>%
addPolygons(stroke = FALSE, smoothFactor = 0.2, fillOpacity = 1,
color = ~pal(randomA), group = "randomA"
) %>%
addLegend("bottomright", pal = pal, values = ~randomA,
title = "random A",
labFormat = labelFormat(prefix = "$"),
opacity = 1, group = "randomA"
)
qpal <- colorQuantile("RdYlBu", countries$gdp_md_est, n = 5)
map <- map %>%
addPolygons(stroke = FALSE, smoothFactor = 0.2, fillOpacity = 1,
color = ~qpal(randomB), group = "randomB"
) %>%
addLegend(
"bottomright",
pal = qpal,
values = ~randomB,
opacity = 1, group = "randomB"
)
# Finally control layers:
map <- map %>%
addLayersControl(
baseGroups = c("randomA", "randomB"),
position = "bottomleft",
options = layersControlOptions(collapsed = F)
)
map
结果快照如下图所示:
另外,在实际问题中,我必须代表其中的九个组,所以我希望所有的传说都在同一个地方。 你有什么建议吗?
【问题讨论】: