R 为传单定义调色板分隔符

R 为传单定义调色板分隔符,r,leaflet,R,Leaflet,有没有一种方法可以根据变量的特定范围定义调色板中断? 以范围从0到1的连续变量x为例。我将调色板定义为: palette <- colorNumeric(palette = rev("RdYlGn"), domain = NULL, na.color = NA) color = ~palette(x) 这将返回一个好看的贴图,但是,打断是在相等的空间中定义的:0.0、0.2、0.4、…、1.0 相反,我将中断定义为: df@data$x_brks <- cut(x,

有没有一种方法可以根据变量的特定范围定义调色板中断? 以范围从0到1的连续变量x为例。我将
调色板定义为:

palette <- colorNumeric(palette = rev("RdYlGn"), domain = NULL, na.color = NA)
color = ~palette(x)
这将返回一个好看的贴图,但是,打断是在相等的空间中定义的:0.0、0.2、0.4、…、1.0

相反,我将中断定义为:

df@data$x_brks <- cut(x, 
                  breaks=c(0, 0.55, 0.65, 0.75, 0.85, 0.95, 1.0), 
                  labels=c("<=0.55", ">0.55 and <=0.65", ">0.65 and <=0.75", 
                           ">0.75 and <= 0.85", ">0.85 and <=0.95", ">0.95")
                     )
df@data$x_brks试试colorBin

risk.bins <-c(0, 0.55, 0.65, 0.75, 0.85, 0.95, 1.0), 
risk.pal <- colorBin( "plasma", bins=risk.bins, na.color = "#aaff56")
通过按原样插入文本,可以在addLegend中手动设置标签

labels=c("<=0.55", ">0.55 and <=0.65", ">0.65 and <=0.75", 
                       ">0.75 and <= 0.85", ">0.85 and <=0.95", ">0.95")
labels=c(“0.55、0.65、0.75、0.85、0.95”)

谢谢!这是可行的,但我无法让标签按定义显示。我使用的是带有标签的pal,这就是它不起作用的原因。我将其更改为颜色和标签,但我得到一个错误:“颜色”和“标签”必须具有相同的长度
colors=~调色板(值),labels=c(“0.55和0.65和0.75和0.85和0.95”),注:
length(unique(调色板(值))
是7,它等于标签向量的长度。我在label中看到了8。最后一个是什么?空白区?是的,那是为
NA
,但不管有没有它,它都不起作用,我得到了同样的错误。这起作用了,但并不理想:
addLegend(map,“bottomright”,colors=c(“D73027”,“FC8D59”,“D9EF8B”,“FEE08B”,“91CF60”,“1A9850”),=c(“0.55和0.65”,“0.85和0.95”)labels=c("<=0.55", ">0.55 and <=0.65", ">0.65 and <=0.75", 
                       ">0.75 and <= 0.85", ">0.85 and <=0.95", ">0.95")