получить доступ к пространственным объектам во фреймах данных пространственных полигонов - PullRequest
1 голос
/ 27 февраля 2011

В этой теме ( График сравнения стран по GADM-Maps ) Гэвин Симпсон помог мне объединить несколько карт из GADM в один объект, который можно построить.

Но как я могу это сделать?теперь получить доступ к одной части фрейма данных пространственных полигонов - например, как я могу изменить цвет одной страны?

Дополнительный вопрос (мне это сейчас не нужно, но, может быть, я смогу кое-что узнать): почемурешение, которое я разместил в предыдущей теме, работает только с уровнем 0?Есть ли способ заставить его работать и с другими уровнями?

[править]
Ответы ниже показывают, как изменить цвета.для доступа к одной из строк во фрейме данных пространственных полигонов можно использовать

> row.names(df)
# outputs the accessable rows
# e.g. [1] "ARG" "CHL"
> plot(df["ARG",])
# plots just Argentina

Ответы [ 3 ]

2 голосов
/ 27 февраля 2011

Вы можете указать цвета напрямую, передав вектор цветов, по одному для каждой строки в SpatialPolygonsDataFrame.

Вот пример использования данных из пакета maptools.

 library(maptools)

  xx <- readShapePoly(system.file("shapes/sids.shp", package="maptools")[1], IDvar="FIPSNO", proj4string=CRS("+proj=longlat +ellps=clrk66"))

  plot(xx)  ## default plot

  plot(xx, col = "lightblue")  ## single colour

  plot(xx, col = sample(rainbow(nrow(xx)))) ## colour for every poly

  ## colour for all, with one different
  cols <- rep("lightblue", nrow(xx))

  cols[10] <- "grey"

  plot(xx, col = cols)
2 голосов
/ 27 февраля 2011

Упрощенный ответ (другие могут иметь более элегантные решения) - извлечь вектор имен из вашего объекта и использовать его для получения индекса.Например:

cols <- rep("lightgreen",length(NAME_ENGLI))
cols[which(NAME_ENGLI=="ARG")] <- "red"
plot(xx,col=cols)
1 голос
/ 27 февраля 2011

Предполагая, что у вас есть объект SpatialPolygons, вы просто указываете col аргумент.Смотрите sp vignette о классах и методах: http://cran.r -project.org / web / packages / sp / vignettes / sp.pdf (в частности, глава 7).

...