我有一个LeafletMap,它可以根据之前定义的pal
函数给多边形上色,这个函数随变量而变化,并且bin(以及颜色)是手动定义的。然后它会基于同一个变量使用相同的调色板创建一个图例。
不幸的是,他们需要一个自定义图例,因为例如,传单上写着“0- 100,100 - 200,200 -300”,而不清楚“200”在哪个bin中。他们希望NA说“无数据”。
没问题,在AddLegend
中我可以使用labels=c("0-99","100-199","200-299","no data")
(例如)。
除了labels
需要一个对应的colors
向量,我用pal
来给多边形着色,我不知道如何用“colors”代替“pal”来给多边形着色,这样我就可以在图例中使用相同的调色板。
提前感谢您的帮助!
示例代码如下。
bins <- c(0,100,200,300,400)
pal1 <- colorBin("BuGn", domain=county_map$full_risk, bins=bins)
map_widget <- leaflet(county_map) %>%
addPolygons(color = "#444444", weight = 1, smoothFactor = 0.5,
opacity = 1.0, fillOpacity = 0.5,
fillColor = ~pal1(median_full_risk),
highlightOptions = highlightOptions(color = "white", weight = 2,
bringToFront = TRUE),
label = labels,
labelOptions = labelOptions(
style = list("font-weight" = "normal", padding = "3px 8px"),
textsize = "15px",
direction = "auto"), group="Median Full Risk Premium") %>%
addLegend("bottomright", pal = pal1, values = ~median_full_risk,
labFormat = labelFormat(prefix = "$"),
opacity = 0.5, title="Median Full Risk Premium", group="Median Full Risk Premium")
1条答案
按热度按时间o2gm4chl1#
回答我自己的问题!结果不是
pal = pal5, values = ~variable
您可以使用
c(pal5(0),pal5(1),pal5(5),pal5(10),pal5(20),pal5(NA)), values = ~variable, labels= c("<1%","1-4","5-9","10-19","20+","no data")
其中
c(0,1,5,10,20,Inf)
是创建面时定义的条柱