9 votos

Convierte las coordenadas de readShapePoly en R a coordenadas de largo alcance

Estoy tratando de encontrar algunos centroides de un shapefile para los municipios daneses y después encontrar el tiempo de conducción entre ellos. Yo uso R 's readShapePoly funcionan desde maptools combinado con el gCentroid funcionan desde rgeos y todo funciona. Sin embargo, obtengo puntos espaciales como

SpatialPoints:
     x       y
1 571860.7 6225016
Coordinate Reference System (CRS) arguments: NA 

Lo que claramente no es algo que pueda usar en Google para obtener los tiempos de viaje. Estoy buscando una manera de convertir estos números a la longitud-latitud, pero no tengo ni idea de cómo.

Cuando leo los datos usando readOGR de la rgdal biblioteca obtengo las mismas coordenadas pero me dice lo siguiente acerca de lo que asumo es la proyección (pero las coordenadas son las mismas)

Slot "proj4string":
CRS arguments:
+proj=utm +zone=32 +ellps=intl +units=m +no_defs

Ejemplo reproducible: He puesto los datos para el ejemplo aquí: https://github.com/sebastianbarfort/shapefiles

Esto debería reproducir el problema:

library(maptools)
library(rgdal)
library(rgeos)

map = readShapePoly("~/Downloads/shapefiles-master/kommuner1983.shp")
centroid = gCentroid(map)
centroid

14voto

fastcall Puntos 874

Utilice spTransform para transformar las coordenadas a WGS84:

library("rgdal")
library("rgeos")

map <- readOGR(".", "kommuner1983")
map_wgs84 <- spTransform(map, CRS("+proj=longlat +datum=WGS84"))
plot(map_wgs84, axes=TRUE)

plot

gCentroid(map_wgs84)
# SpatialPoints:
#       x     y
# 1 10.05 55.96
# Coordinate Reference System (CRS) arguments: +proj=longlat +datum=WGS84
# +ellps=WGS84 +towgs84=0,0,0 

rgdal::readOGR es capaz de leer la información de la proyección automáticamente. maptools no lee ni escribe la información de la proyección, dejando que usted maneje estos detalles manualmente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X