在使用mapview
. rasterVis::levelplot
下面是一个可重现的例子——我希望有与用(标签:“a”、“b”、“c”)制作的情节相同的图例标签。我没有看到任何帮助mapView
(签名 'RasterLayer' 的 S4 部分方法)来涵盖这一点,或者我可能遗漏了一些明显的东西。
library(raster)
#> Loading required package: sp
library(rasterVis)
#> Loading required package: lattice
#> Loading required package: latticeExtra
#> Loading required package: RColorBrewer
library(mapview)
library(RColorBrewer)
# Convert from continous raster to categorical one
my_rst <- reclassify(poppendorf[[5]], rcl = c(0.5*10^4, 1.5*10^4, 1,
1.5*10^4, 1.7*10^4, 2,
1.7*10^4, 2.5*10^4, 3))
my_rst <- ratify(my_rst)
# Add custom label for each class
levels(my_rst)[[1]]$label <- letters[1:3]
levels(my_rst)
#> [[1]]
#> ID label
#> 1 1 a
#> 2 2 b
#> 3 3 c
# Custom palette
my_palette <- brewer.pal(n = 3, name = "Dark2")
my_palette
#> [1] "#1B9E77" "#D95F02" "#7570B3"
# Plot
levelplot(my_rst, col.regions = my_palette)
mapView(my_rst, col.regions = my_palette)
由reprex 包(v0.2.1)于 2019 年 2 月 26 日创建