【问题标题】:Plotting a big raster file results in a white frame绘制一个大的光栅文件会产生一个白框
【发布时间】:2021-07-29 20:33:18
【问题描述】:

我目前正在使用 256x256 像素的 ASCII 矩阵。我正确地将它导入到 R 中,对其进行光栅化,并且这些值是我所期望的(即,正确的 x 和 y 边界以及最小和最大“z”值)。然而,在绘制它时,我得到了一个空白栅格,就像矩阵中的每个值都是零一样。

我尝试将另一个文件创建为 5x5 矩阵,我对此没有任何问题。我错过了什么吗?

以下文件和屏幕截图: my 256x256 raster

https://gofile.io/d/JGApXIascii 矩阵链接

【问题讨论】:

    标签: r matrix plot ascii raster


    【解决方案1】:

    您的栅格几乎是空的,因为它只有 2% 的值 !=0。但是,如果您导出栅格并在 GIS 软件(如 Qgis 或 ArcMap)中对其进行可视化,通过将 0 值设置为 100% 透明度,您可以看到其余值:

    这里是一个例子:

    library(raster)
    x <- read.table("D:/muon sideways0000.txt")
    x <- as.matrix(x)
    r <- raster(x)
    writeRaster(r,"D:/r.tif")
    z <- apply(x, 1, function(x)sum(x!=0))
    sum(z)/ncell(r)*100
    

    【讨论】:

      【解决方案2】:

      为了帮助可视化,您可以这样做

      library(terra)
      x <- read.table("muon sideways0000.txt")
      x <- as.matrix(x)
      r <- rast(x)
      
      plot(r > 1)
      

      或其他一些转换,例如

      rr <- clamp(r, 0, 100)
      plot(rr)
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-04-17
        • 1970-01-01
        • 2022-01-02
        • 1970-01-01
        • 1970-01-01
        • 2019-08-30
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多