[英]Plotting a raster in R with specific colors for specific values
我有一个具有10个值的栅格:
vals <- c(1,2,3,4,5,12,123,1234,12345,23,234,2345,34,345,45)
我想绘制一个图,其中值1到5是彩色的。 所有其他值均为灰度。 另外,我希望图例特别显示每个值和相应的颜色。 在ArcGIS中,这很容易完成(请参见所需结果)
我做了很多尝试,但是我无法提出解决方案来获得良好的结果。 有人可以帮忙吗?
栅格可以在这里找到: https : //www.dropbox.com/s/kzcba9r4t9z4mc1/raster.tif?dl=0
事实证明,基本图对于分类数据有点烦人。 我敢肯定有办法,但是如果有高速公路,为什么要走石路。
出色的rasterVis
软件包使绘制分类栅格变得很容易...还有很多其他事情。 查看主页上的所有功能。
回到您的问题:
library(raster)
library(rasterVis)
#load raster
r <- raster('raster.tif')
#define color palette
cpal <- c('darkred','orange','green','dodgerblue','navy',grey.colors(8,start = 0.4,end=0))
#make categorical
r2 <- ratify(r)
#plot
levelplot(r2,col.regions=cpal,att='ID')
结果:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.