Подтвердить что ты не робот

Ошибка: isTRUE (gpclibPermitStatus()) не TRUE

Этот вопрос может быть дубликатом ранее не ответившего. У меня все еще есть проблема.

Я пытаюсь использовать шейп файл zipcode и придумываю следующую ошибку:

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

Справка

4b9b3361

Ответ 1

Я узнал этот ответ в другом месте: мне пришлось набрать

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

и все прошло отлично.

Ответ 2

Вы можете посмотреть файл Hadley master для ggplot2/R/fortify-spaces.r. Основываясь на этой внешней ссылке, я понимаю, что строки 31-4 (в ней текущая форма) используются для чтения чего-то вроде

# 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 и этот ответ, rgeos должен решить проблему для более поздних установок.

Ответ 3

Я столкнулся с одной и той же проблемой, но решение было немного отличным от перечисленных выше.

Как упоминалось другими, проблема связана с зависимостью от 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.

Надеюсь, что это будет полезно.