我正在尝试读取TIF文件,如下所示:
d = readGDAL('F182013.v4c.stable_lights.avg_vis.tif')
Error in validityMethod(as(object, superClass)) :
Geographical CRS given to non-conformant data: -180.004166667
该文件来自美国国家海洋和大气管理局night light data,因此它应该是有效的文件。也许这个问题与数值浮点问题有关。
感谢任何建议如何解决。
答案 0 :(得分:1)
readGDAL
调用错误检查函数validityMethod
,它检查WGS84的经度是否在+/- 180度范围内。可以使用以下方法抑制非致命错误和消息:
d = readGDAL('F182013.v4c.stable_lights.avg_vis.tif', silent = TRUE)
这样该文件至少可以作为SpatialGridDataFrame读入。对象的相应地理范围仍然超过+/- 180度,但误差可能在您愿意接受的容差范围内。
bbox(d)
min max
x -180.00417 180.00417
y -65.00417 75.00417
答案 1 :(得分:0)
解决方法是:
require(tiff)
r = raster(readTIFF(filepath, as.is = T))
extent(r) = extent(-180,180,-65,75)
crs(r) = CRS("+proj=longlat +datum=WGS84")