¿Cómo puedo convertir un shapefile a límites lat y lon?
12
Tengo un shapefile de subdivisiones de país y me gustaría extraer una serie de límites de longitud y longitud para cada división ... ¿es posible hacerlo?
Una posible forma de proceder usando SAGA GIS http://www.saga-gis.org
Después de abrir su archivo shape, ejecute estos 3 módulos: 1. Extensión Módulos \ Formas \ Herramientas \ Obtener formas
Módulos \ Formas \ Herramientas \ Puntos \ Puntos de líneas [al contrario de lo que sugiere el nombre, también puede usar esto para obtener puntos de un polígono]
Módulos \ Formas \ Herramientas \ Puntos \ Agregar coordenadas a puntos Esto le dará una tabla que contiene las coordenadas x e y de las 4 esquinas del cuadro delimitador de su archivo poligonal.
Aquí hay una versión R, que usa datos de ejemplo del paquete rgdal:
library(rgdal)
dsn <- system.file("vectors/ps_cant_31.MIF",package="rgdal")[1]
d <- readOGR(dsn = dsn, layer="ps_cant_31")## transform if this is not longlatif(is.projected(d)) d <- spTransform(d, CRS("+proj=longlat +ellps=WGS84"))for(i in1:nrow(d)){print(bbox(d[i,]))}
Yo uso fiona y bien proporcionado para ese tipo de tareas:
import fionafrom shapely.geometry import shapewith fiona.open(r'd:\Projects\_00_Data\_USstates\fe_2007_us_state00.shp','r')as features:for i, feat in enumerate(features):
geom = shape(feat['geometry'])
name = feat['properties']['NAME00']print','.join((name,)+ tuple([str(i)for i in geom.bounds]))
Las miradas de salida de este tipo, esas son las coordenadas Lat / Lon: -124.72583900000001,45.544321, -116.915989,49.002494 -82.626182,37.202467, -77.71951899999999,40.638801 -111.056888,40.996345999999996, -104.052287,45.005904 -67.955811,17.913769, -65.22156799999999,18.511706
Respuestas:
Usando el módulo ogr Python de OSGEO, este ejemplo le dará una tupla que contiene las coordenadas que definen un sobre para cada característica.
fuente
Una posible forma de proceder usando SAGA GIS http://www.saga-gis.org Después de abrir su archivo shape, ejecute estos 3 módulos: 1. Extensión Módulos \ Formas \ Herramientas \ Obtener formas
Módulos \ Formas \ Herramientas \ Puntos \ Puntos de líneas [al contrario de lo que sugiere el nombre, también puede usar esto para obtener puntos de un polígono]
Módulos \ Formas \ Herramientas \ Puntos \ Agregar coordenadas a puntos Esto le dará una tabla que contiene las coordenadas x e y de las 4 esquinas del cuadro delimitador de su archivo poligonal.
fuente
En arcgis, aquí está el código de Python. El resultado es una lista de minx, miny, maxx, maxy, minM, maxM, minZ, maxZ (
fuente
Aquí hay una versión R, que usa datos de ejemplo del paquete rgdal:
fuente
Yo uso fiona y bien proporcionado para ese tipo de tareas:
fuente