在wes_palette中添加额外的颜色

时间:2017-02-12 17:04:15

标签: r colors

我知道这是一个小菜鸟,但我已经创建了wes_palette这样:

rnq<-wesanderson::wes_palette("Zissou", 5, "discrete")

绘制从0到4的值的间隔。

但我的数据中只有一个值为9,我想透露它,例如使用黑色。

我正在使用spplot

rng = seq(0, 4, length=5)
rnq<-wesanderson::wes_palette("Zissou", 5, "discrete")
scale = list("SpatialPolygonsRescale", layout.scale.bar(), 
             offset = c(-900000,-1100000), 
             scale = 300000, fill=c("transparent","black"))
text1 = list("sp.text", c(-900000,-1150000), "0")
text2 = list("sp.text", c(-550000,-1150000), "300 Km")
text4<-list("sp.text", c( -730000, -1270000), cex=0.6, "Projection: EPSG 102003")
arrow = list("SpatialPolygonsRescale", layout.north.arrow(), 
             offset = c(-900000, -400000), scale = 200000)
spplot(spdf_img, "re1", col = "white", at = rng, 
       col.regions = rnq,
       colorkey = list(
         space = "bottom", labels=list(
           at=round(rng, 1))),
       sp.layout=list(scale, text1, text2, text4, arrow),
       par.settings = list(axis.line = list(col = NA)))

主要是,我不知道如何定义我的interval("rnq"),加上颜色渐变,然后是at中的剪切(spplot参数),将值9更改为黑色

地图是这样的: gh

白色多边形是我需要改变颜色的那个。

2 个答案:

答案 0 :(得分:1)

在当前的rng和rnq:

中添加值9和黑色
rng <- c(rng,9)
rnq <- c(rnq,"black")

然后你的代码应该可以工作。

答案 1 :(得分:0)

是的,我设法用或多或少的代码修复它。

rng = c(seq(0, 4, length=5), 9)
rnq = c("#3B9AB2", "#78B7C5", "#EBCC2A", "darkorange1", "#F21A00")

无论如何,谢谢你;)