【问题标题】:Extracting depth data from raster using lat and Lon使用 lat 和 Lon 从栅格中提取深度数据
【发布时间】:2020-11-03 05:19:10
【问题描述】:

我正在尝试使用此 gebco(附加 tiff 文件)获得给定纬度和地段的最大深度 (max_depth),并且它不断出现 NA。在过去,这很有效,所以我不确定出了什么问题。 site 还用于从 WOCE 文件中提取温度和营养数据,并且有效。我的代码中是否缺少某些内容?

library(raster)
bathy <- raster("gebco0.5.tif") 

site <- cbind(125, -49)
extract(bathy, site)
#      [,1]
# [1,]   NA


show(bathy)
#class      : RasterLayer 
#dimensions : 360, 720, 259200 (nrow, ncol, ncell) 
#resolution : 1, 1 (x, y) 
#extent     : 0, 720, 0, 360 (xmin, xmax, ymin, ymax) 
#crs        : NA 
#source     : gebco0.5.tif
#names      : gebco0.5

【问题讨论】:

    标签: r raster r-raster


    【解决方案1】:

    没有附加文件,但您的代码看起来不错,并且可以正常工作

    r <- raster("https://i.stack.imgur.com/g8WSo.png")
    extent(r) <- c(-180,180,-90,90)
    site <- cbind(125, -49)
    extract(r, site)
    # 0
    

    我的猜测是bathy 的范围不是你所期望的。你能show(bathy)给我们吗?

    现在我们有了show(bathy),我们可以看到您对经纬度数据有一个意想不到的范围:0, 720, 0, 360 (xmin, xmax, ymin, ymax)。这样你就得到了

    r <- raster("https://i.stack.imgur.com/g8WSo.png")
    site <- cbind(125, -49)
    extract(r, site)
    #     [,1]
    #[1,]   NA
    

    据我所知,您似乎需要这样做:

    extent(r) <- c(-180, 180, -90, 90)
    

    然后事情应该会奏效(正如我在上面已经展示的那样)。如果您知道“站点”的下落,您可以通过目视检查

    plot(r)
    points(site)
    

    【讨论】:

    • 这是显示(bathy 给我的)类:RasterLayer 尺寸:360、720、259200(nrow、ncol、ncell)分辨率:1、1(x、y)范围:0、720、 0, 360 (xmin, xmax, ymin, ymax) crs:NA 来源:/Users/lavy/Desktop/Remineralisation model/gebco0.5.tif 名称:gebco0.5
    • 图片也是文件。对不起,我应该提到这一点。图像应下载为 .tiff 文件(至少它为我这样做)
    • 在这种情况下,您不应使用 cmets,而应编辑您的问题 --- 我已经为您完成了。我会更新我的答案(图像显然是 png 文件?)
    猜你喜欢
    • 2019-01-07
    • 1970-01-01
    • 2019-07-19
    • 1970-01-01
    • 2019-04-13
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 1970-01-01
    相关资源
    最近更新 更多