Я новичок в ГИС в R, и я пытаюсь добавить координаты широты и долготы или координаты UTM в шейп-файл. Я скачал границы города Чикаго (City_Boundaries.shp) отсюда: http://www.cityofchicago.org/city/en/depts/doit/supp_info/gis_data.html
Я загрузил библиотеки maptools и rgeos:
library(maptools)
library(rgeos)
library(rgdal)
Я внес данные в R & попытался добавить код UTM для зоны 16T:
city<- readShapeSpatial("C:/Users/Luke.Gerdes/Documents/GIS Files/Chicago/City_Boundary.shp")
proj4string(city) <- CRS("+proj=utm +north +zone=16T + datum=WGS84")
Однако полученные данные не имеют для меня смысла. Когда я смотрю на слоты «coords» в «city», значения координат, например, X = 1092925 и Y = 1944820. Я использовал сторонний инструмент (http://home.hiwaay.net/~taylorc/toolbox/geography/geoutm.html), чтобы найти координаты GPS. Результаты были: широта = 17,511, долгота = -81,42. Это где-то между Ямайкой и побережьем Гондураса. Мне кажется, что координаты шейп-файлов существуют в своей собственной вселенной; как, возможно, подразумевает название шейп-файла, координаты обеспечивают точное отображение формы города, но эти координаты не отображаются автоматически на земном шаре.
Моя конечная цель - определить, происходило ли в Чикаго несколько событий с геотегами. Мне удобно конвертировать те точки, которые указаны по широте / долготе, в UTM, как показано ниже:
SP <- SpatialPoints(cbind(-87.63044, 41.79625), proj4string=CRS("+proj=longlat +datum=WGS84"))
SP <- spTransform(SP, CRS("+proj=utm +north +zone=16T +datum=WGS84"))
Я также хочу попробовать работать с данными событий в их исходном формате, если это имеет смысл. В конце концов, мне нужна помощь, чтобы превратить границы города Чикаго в многоугольник, который я могу сравнить с данными о моих событиях. Что-то вроде этого:
gContains(city, SP)
Как мне собрать мои шейп-файлы и данные о событиях в общую (и точную) систему координат, чтобы я мог проверить, находятся ли точки в городе? Любая помощь, которую вы можете оказать, будет принята с благодарностью.