【问题标题】:Error: isTRUE(gpclibPermitStatus()) is not TRUE错误:isTRUE(gpclibPermitStatus()) 不是 TRUE
【发布时间】:2015-08-27 16:39:51
【问题描述】:

此问题可能与an earlier unanswered one 重复。我还是有这个问题。

我正在尝试使用邮政编码 shapefile 并出现以下错误:

tract <- readOGR(dsn = ".", layer = "cb_2013_us_zcta510_500k")
tract<-fortify(tract, region="GEOID10")
Error: isTRUE(gpclibPermitStatus()) is not TRUE

我已尝试安装 gpclib 来解决此问题,但随后出现以下错误:

install.packages("gpclib")

Installing package into ‘C:/Users/Nick/Documents/R/win-library/3.2’
(as ‘lib’ is unspecified)
Package which is only available in source form, and may need compilation of C/C++/Fortran: ‘gpclib’
  These will not be installed

帮助?

【问题讨论】:

  • 您的系统上是否安装了rgeoscran.r-project.org/web/packages/rgeos/index.html
  • 现在是这样,我还是有同样的问题。
  • 如果你安装了rgdalrgeosggplot2,重启R后你应该不会看到这个错误。不再需要gpclib了。

标签: r gis choropleth


【解决方案1】:

您可以查看 Hadley 的 master 文件以获取 ggplot2/R/fortify-spatial.r。基于this 外部链接,我的理解是第 31-34 行(以当前形式)用于阅读类似

# Union together all polygons that make up a region
try_require(c("gpclib", "maptools"))
unioned <- unionSpatialPolygons(cp, invert(polys))

所以当时解决问题的一种方法是打开许可证

library(rgdal)
library(maptools)
if (!require(gpclib)) install.packages("gpclib", type="source")
gpclibPermit()

作为@rcs、@Edzer Pebesma 和answer 提及,rgeos 应该可以解决最近安装的问题。

【讨论】:

    【解决方案2】:

    我遇到了同样的问题,但解决方案与上面列出的略有不同。

    正如其他人所提到的,问题在于对 gpclib 的依赖,这是 maptools 所需的。

    但是,在加载 maptools 后,它提供了以下消息...

    > library('maptools')
    
    Checking rgeos availability: FALSE
    Note: when rgeos is not available, polygon geometry     computations in maptools depend on gpclib,
    which has a restricted licence. It is disabled by default;
    to enable gpclib, type gpclibPermit()
    

    所以可以使用 rgeos 来代替 gpclib。为了解决,我做了以下...

    install.packages('rgeos', type='source')
    install.packages('rgdal', type='source')
    

    重装rgdal去掉了对gpclib的依赖,指向rgeos。

    希望这有帮助。

    【讨论】:

    • 安装 rgeos 和 maptools 后重新安装 rgdal 对我有帮助!
    【解决方案3】:

    我在其他地方学到了这个答案:我必须输入

    install.packages("gpclib", type="source")

    它工作得很好。

    【讨论】:

    • 请注意,gpclib 软件包仅可免费用于非商业用途;它的限制性许可是摆脱对它的依赖的主要原因。
    猜你喜欢
    • 2015-01-27
    • 1970-01-01
    • 2023-04-03
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多