Чтение и построение файла формы esri в R
У меня возникают трудности с чтением в .shp(файл формы esri) в R. Я пробовал несколько опций в R и пытался преобразовать файл формы в ArcMap в то, что правильно читает в файле формы, но ничего не работает все же. (В ArcMap я скорректировал геометрию, преобразованную из одного в multipolygon и т.д., Что, вероятно, не было необходимым или релевантным)
Возможно, что-то связано с тем, что мой файл формы содержит "области" (многополигоны) вместо "полигонов"...
Как я могу правильно прочитать этот тип файла формы в R для построения графика? (он выглядит как нормальная форма в ArcMap)
В ArcMap файл формы выглядит следующим образом:
http://bfast.r-forge.r-project.org/arcmapshape.jpg
(показывает файл формы с полигонами внутри других полигонов)
В R это выглядит так:
![enter image description here]()
(показывает файл формы, где некоторые полигоны ошибочно заполнены)
Я использовал следующий код в R:
require(maptools)
require(rgdal)
newproj <- "+proj=utm +zone=55 +south +ellps=GRS80 +units=m"
shape<- readShapeSpatial(pdir, proj4string = CRS(newproj),repair=TRUE,force_ring=T,verbose=TRUE) # without any errors
plot(shape, col="gray",border="blue", axes=TRUE)
# via rgdal
folder <- c("spatial")
lyr <- c("clipped_forest_mga")
shp <- readOGR(dsn=folder,layer=lyr)
plot(shp, col="gray",border="blue", axes=TRUE)
Обе команды plot() дают один и тот же результат R. Ошибок не возникает. только следующее сообщение
OGR data source with driver: ESRI Shapefile
Source: "P:/Victoria_DSE/BFAST_spatial/vector/PLM_excl_fire03_09_GDA94LL/mgaz94z55/clipped_EG", layer: "clipped_forest_mga"
with 1 features and 4 fields
Feature type: wkbMultiPolygon with 2 dimensions
Как это можно решить?
Ответы
Ответ 1
Jan,
Ваш шейп файл, вероятно, был правильно прочитан. Скорее всего, заговор был неправильным. Попробуйте spplot() вместо plot():
spplot(shp, col.regions="gray", col="blue")
Если ваш шейп файл имеет более одного столбца (что вполне вероятно), добавьте zcol = 1 (или любой другой столбец), чтобы вы получили только одну панель
spplot(shp, zcol=1, col.regions="gray", col="blue")
Если вы действительно хотите использовать сюжет, вам нужно установить цвет фона, потому что иначе он будет печатать отверстия прозрачными. Поэтому установите pbg = "white". Попробуйте:
plot(shp, col="gray", border="blue", axes=TRUE, pbg="white")
Кстати, список, который, как мне кажется, был Dirk, относится к R-sig-Geo, и вы можете найти там много ответов и спросить многих сиг- связанные вопросы.