当栅格中只有一个值时,我想调整用 tmap 绘制的栅格的基本颜色。
这是一个非常简单的可重现示例:
library(raster)
library(tmap)
a <- raster(matrix(sample(c(1, NA), 10000, replace = TRUE, prob = c(0.01, 0.99)), nr = 100, nc = 100, ))
tm_shape(a) +
tm_raster()
您可以看到默认的黄色是人眼几乎看不到的。因此,在绘制只有几个像素的 map 时,很难找到具有值的像素。
不幸的是,经过多次尝试,我无法改变这种颜色。我认为其他用户可能会遇到这个问题,因此如果这里出现一个简单的答案可能会非常有帮助。
不成功的尝试:
tm_shape(a) +
tm_raster(col = "black")
tm_shape(a) +
tm_raster(palette = "RdBu")
注意:对于这个,我预计会出现红色或蓝色。不是灰色...我也尝试调整中点,但没有任何改变。
tm_shape(a) +
tm_raster() +
tm_layout(aes.color= c(fill = "black"))
最佳答案
显然,当您仅指定 col=
时,它会以一种颜色为整个栅格着色。所以我猜你必须选择点所在的图层?然后按照文档中的说明向 palette=
提供参数。
这就是我让它工作的方式:
tm_shape(a) +
tm_raster(col = "layer", palette = "black")
关于r - 如何使用 tmap 为栅格指定单一颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56767683/