【发布时间】:2014-09-18 16:36:07
【问题描述】:
我正在努力使用sp 包中的spplot 在多个多边形上引入自定义调色板。
我正在绘制几个字段并想显示我的 rating ,它的值可以是 0、1、2、4 或 5。我需要为此使用自定义颜色。我尝试的是:
spplot(Map,zcol="Rating",
col.regions=c("0"="#00cc00","1"="#ffff66","2"="#e5c100",
"3"="orange","4"="#ff5e5e","5"="red"),
colorkey=TRUE)
但是,它会产生重复的颜色,如下图所示。我该如何解决这个问题?我知道如何使用 ggplot 来实现它,但出于几个原因,我需要知道如何使用 spplot 来实现它。 非常感谢您的帮助。
编辑:这里有一个地图的例子,它确实按照我需要的方式工作:
con <- url("http://gadm.org/data/rda/DEU_adm3.RData")
print(load(con))
close(con)
t1<-gadm[grep("Sachsen|Hessen|Bayern",gadm$NAME_1),]
col=c("red","yellow")
spplot(t1,zcol="TYPE_3",col.regions=col)
我注意到以下情况:当我使用我的数据对原始“Large SpatialPolygonsDataframe”进行子集化时,生成的地图是“Formal Class SpatialPolygonsDataframe”。这在我刚刚发布的示例中不会发生。谁能告诉我是什么导致了这种行为?很遗憾,我无法上传原始(敏感)数据。
【问题讨论】:
-
如果您将代码更改为
col.regions=c("#00cc00", "#ffff66", "#e5c100", "orange", "#ff5e5e", "red"),它是否按照您期望的方式工作 -
发reproducible example 会更容易帮助到您,以便其他人可以重现您的问题并尝试解决。