2016-11-07 12 views
0

Я использую следующий код для чтения данных переписи переписи и получения данных о центроидах для каждого участка переписи. Я хотел бы выделить широту и долготу из этого для некоторой выборки, которую я выполняю через API Foursqaure, который требует широты и долготы. Я замечаю, что этот код возвращает мне систему координат, отличную от долготы широты. Любая идея, как я могу извлечь широту долготы, будь то преобразование координат или через другую функцию?преобразование данных координат в широту и долготу в R?

#load libraries----------------------------- 
library(rgdal) 
library(sp) 
library(GISTools) 
library(ggplot2) 

#load census tact file------------------------ 
tracts = readOGR("nycb2010.shp", layer="nycb2010") 

#extract centroids 
centroids = as.data.frame(getSpPPolygonsLabptSlots(tracts)) 

#map new data 
ggplot() + geom_polygon(data=tracts, aes(x=long, y=lat, group=group), fill="black", colour="grey90", alpha = 1)+ 
    geom_point(data=centroids, aes(x=V1, y=V2, group = 1, color = 'red'), size = .1) 

ответ

0

Вы можете использовать функцию spTransform изменить систему координат ваших пространственных данных, например:

library(sp) 
library(rgdal) 

lat_long = CRS("+init=epsg:4326") 
tracts_lat_long <- spTransform(tracts, lat_long) 

proj4string(tracts_lat_long) 
[1] "+init=epsg:3035 +proj=laea +lat_0=52 +lon_0=10 +x_0=00 +y_0=3210000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs" 
+1

Nevermind Я понимаю, что я не использовал новую переменную, как глупо. Спасибо! – LoF10

 Смежные вопросы

  • Нет связанных вопросов^_^