0
我有用二进制编码的栅格数据,并且我想使用rasterVis
包中的levelplot
来绘制数据,例如0值为绿色,1值为红色。我似乎无法找到如何为值指定颜色。使用电平图指定二进制数据的颜色
举个例子,
# create a matrix with 0s and 1s
nr <- 21
nc <- 11
m <- matrix(sample(0:1, nr*nc, replace=TRUE), nr, nc)
# plot the matrix
colour <- c("green", "red")
levelplot(m, col.regions=colour, margin = FALSE)
的正常工作,并产生这种 Binary matrix
但是,如果我有这种情况发生是全0或全1矩阵,
m2 <- matrix(0, nr, nc)
levelplot(m2, col.regions=colour, margin = FALSE)
m3 <- matrix(1, nr, nc)
levelplot(m3, col.regions=colour, margin = FALSE)
我得到同样的情节,当我想要的是0值为绿色,1值为红色。
Matrix with only 0 or 1 values
如何指定这样的,如果它是0,它出来的绿色,如果它是1,它出来的红?
'levelplot'不是基地R的部分请注明包名( s)你在你的问题中使用。 – lmo
@lmo刚才在 –
中加入了我目前无法访问此软件包,所以我无法测试任何内容,但是您可以尝试使用'ifelse'。也许col ='ifelse(0,“green”,“red”)'。无论如何,这种技术适用于R基地。查看帮助部分:'?levelplot'查看是否手动调整颜色类型。 – lmo