如何在光栅中为R中的某个数字赋予不同的颜色(或形状)?

时间:2015-01-15 10:42:23

标签: r plot raster

我有一个栅格,其值为9999几个像素。我想在绘制整个光栅之前给这些像素一定的颜色。因此图例不会考虑此值

  Library(raster)
  filename <- system.file("external/test.grd", package="raster")
  r <- raster(filename)
  plot(r) ### normal plot which takes into account all pixels

  r[r>1000]=9999 

   plot(r)

这里的图例(情节)不应该考虑9999而是通常给这个值指定颜色(或形状)和情节r9999的传奇也可以分开

1 个答案:

答案 0 :(得分:1)

您可以创建一个没有9999个单元格的光栅副本和一个只有9999个单元格的光栅副本并覆盖它们:

library(raster)
filename <- system.file("external/test.grd", package="raster")
r <- raster(filename)
r[r>1000]=9999 

# raster without 9999
r2 = reclassify(r, matrix(c(1000, Inf, NA), ncol=3))
plot(r2, colNA = NA)

# raster with only 9999
r3 = reclassify(r, matrix(c(-Inf, 1000, NA, 1000, Inf, 9999), ncol=3, byrow=T))
plot(r3, add=T, col='black', colNA = NA, legend=F)