R版本3.6.1(2019-07-05)(通过自制程序安装)在使用Terrain()函数时因段错误而崩溃

时间:2019-08-19 23:37:10

标签: r homebrew raster terrain

安装在平台:MacOsX:Sierra上的

R。 10.12.6

我通过自制软件安装的R / RStudio(木桶)遇到了这个问题(崩溃/核心转储)。请注意,这可能是与R本身有关的问题,但是,考虑到该功能是“其他人”通常使用的,而与R本身相比,该问题似乎与R的安装有关。 >

如果此“错误”的报告在本论坛的上下文中不合适,请事先谅解。我想知道自制软件是否有问题?

安装

$ brew cask install r
$ brew cask install rstudio

问题

>setwd("/users/my-home-dir/work/GIS/R-and-QGIS/SPATIAL_ANALYSIS/")
>dem=raster("vie_dem_srtm.tif") #elevation in meters
>plot(dem, zlim=c(1000,3000)) #areas where elevation is between 1000m-3000m

>###Calculate slope

>slope=terrain(dem,opt='slope',unit='degrees') # Problem command

以上命令的结果如下:

*** caught segfault ***
address 0x131965ff8, cause 'memory not mapped'

Traceback:
1: .terrain(as.double(v), as.integer(c(tr$nrows[i] + 2, nc)), rs, un, 
nopt, lonlat, y)
2: terrain(dem, opt = "slope", unit = "degrees")

Possible actions:
1: abort (with core dump, if enabled)
2: normal R exit
3: exit R without saving workspace
4: exit R saving workspace
Selection?:

预期结果为无段故障,并且为斜率值。

1 个答案:

答案 0 :(得分:1)

您是否尝试过?terrain中的示例?

library(raster)
elevation <- getData('alt', country='CHE')
x <- terrain(elevation, opt='slope', unit='degrees')

这在Mac(High Sierra)上对我有效,在CRAN Mac上也适用。

如果该示例对您有用,则按照Ben Bolker的建议通过电子邮件或github与栅格数据包的维护者联系,并提供有问题的文件,以查看是否可以重现您遇到的问题。