我一直在尝试从marmap获取测深线,最近调用getNOAA.bathy函数时收到以下错误消息
Querying NOAA database ...This may take seconds to minutes, depending on grid size
Error in if (ncol(x) == 3 & !exists("bathy", inherits = FALSE)) { : argument is of length zero
这种情况甚至发生在简单的事情上
map <- getNOAA.bathy(lon1=10,lon2=19,lat1=67,lat2=71,resolution=10, keep=TRUE)
我更新了软件包到最新版本(1.0.4),因为我读到可能有与服务器访问相关的问题。我也尝试在R而不是RStudio中运行上述脚本,但错误仍然存在...如果我使用以前下载的数据,该函数工作正常,但现在我需要使用另一组坐标为新Map。
任何帮助都是非常感谢!
3条答案
按热度按时间odopli941#
您需要(重新)安装
rgdal
和raster
软件包。这已经在marmap
软件包的here on the GitHub Issue pages中有所说明。yacmzcpb2#
对于其他人来说,报告的错误也可能是由于服务器停机造成的- R没有给予任何指示。您可以检查https://www.ncei.noaa.gov/alerts是否有计划的停机。
ctzwtxfj3#
几个月来,同样的错误信息似乎一直困扰着Windows用户,所有软件包都是最新的。
marmap v1.0.9
现已在GitHub上提供:这个版本应该解决这个臭名昭著的错误消息:
我已经能够确认这个错误是由于
raster
软件包在Windows上可以处理的url长度的限制。来自NOAA服务器的geotif文件现在使用utils::download.file()
下载到用户磁盘上的临时文件中,然后使用raster::raster()
导入到R中。marmap v1.0.9
将在未来几天内在CRAN服务器上提供。