【问题标题】:functions from tmap package crashes my Rtmap 包中的函数使我的 R 崩溃
【发布时间】:2017-06-25 11:58:57
【问题描述】:

以下代码 crashed 我的 R 会话。我在 Jupyter Notebook 的 RStudio 和 conda R 中都试过了:

qtm(shp = countries_spdf, fill = "population")
tm_shape(countries_spdf) + tm_fill(col = "population")

您可以通过以下代码获取数据集:

download.file("http://s3.amazonaws.com/assets.datacamp.com/production/course_1816/datasets/02_countries_spdf.rds","data/02_countries_spdf.rds")
countries_spdf <- readr::read_rds("data/02_countries_spdf.rds")

错误:

断言失败:(0),函数查询,文件 AbstractSTRtree.cpp,第 285 行。 中止陷阱:6

环境:

  • Mac OSX 10.10.5
  • R 版本 3.3.1 (2016-06-21)
  • conda 4.3.9
  • jupyter notebook 4.2.3
  • RStudio 版本 1.0.44

【问题讨论】:

  • 不幸的是,我无法重现崩溃。可能是由 gdal 或 geos 库之一引起的。图书馆(sp);情节(countries_spdf)工作?
  • @MartijnTennekes 是的。

标签: r geospatial tmap


【解决方案1】:

也许不相关,但我什至无法加载当前版本的 tmap 和 tmaptools。当我尝试时,它使 R 崩溃。

> library(tmap)

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

Traceback:
 1: dyn.load(file, DLLpath = DLLpath, ...)
 2: library.dynam(lib, package, package.lib)
 3: loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]])
 4: asNamespace(ns)
 5: namespaceImportFrom(ns, loadNamespace(j <- i[[1L]], c(lib.loc,     .libPaths()), versionCheck = vI[[j]]), i[[2L]], from = package)
 6: loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]])
 7: asNamespace(ns)
 8: namespaceImportFrom(ns, loadNamespace(j <- i[[1L]], c(lib.loc,     .libPaths()), versionCheck = vI[[j]]), i[[2L]], from = package)
 9: loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]])
10: namespaceImport(ns, loadNamespace(i, c(lib.loc, .libPaths()),     versionCheck = vI[[i]]), from = package)
11: loadNamespace(package, lib.loc)
12: doTryCatch(return(expr), name, parentenv, handler)
13: tryCatchOne(expr, names, parentenv, handlers[[1L]])
14: tryCatchList(expr, classes, parentenv, handlers)
15: tryCatch({    attr(package, "LibPath") <- which.lib.loc    ns <- loadNamespace(package, lib.loc)    env <- attachNamespace(ns, pos = pos, deps)}, error = function(e) {    P <- if (!is.null(cc <- conditionCall(e)))         paste(" in", deparse(cc)[1L])    else ""    msg <- gettextf("package or namespace load failed for %s%s:\n %s",         sQuote(package), P, conditionMessage(e))    if (logical.return)         message(paste("Error:", msg), domain = NA)    else stop(msg, call. = FALSE, domain = NA)})
16: library(tmap)

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: 

我正在运行当前的 Mac OS X Sierra (10.12.6) 和 R 3.4.1。这在 RStudio 和 R for Mac 附带的 R GUI 中都会发生。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-20
    • 2015-10-04
    • 2020-08-31
    • 2021-03-17
    • 2015-07-07
    • 2017-06-24
    相关资源
    最近更新 更多