【问题标题】:Plotting a raster in R with specific colors for specific values在 R 中为特定值绘制具有特定颜色的栅格
【发布时间】:2017-12-17 22:54:23
【问题描述】:

我有一个包含 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

【问题讨论】:

    标签: r plot visualization raster


    【解决方案1】:

    编辑:

    事实证明,分类数据的基础绘图有点烦人。我敢肯定有办法,但如果有高速公路,为什么要走崎岖不平的道路。

    伟大的包rasterVis 使绘制分类栅格变得容易......以及更多相关的事情。查看homepage 了解所有功能。

    回到你的问题:

    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')
    

    结果:

    【讨论】:

      猜你喜欢
      • 2018-05-15
      • 2017-07-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多