¿Convertir archivos de forma a GeoJSON?


19

Estoy tratando de convertir Shapefiles del sitio web del Distrito de Senados del Estado de Texas en un archivo GeoJSON para usar con la API de Google Maps. Estoy usando QGIS para facilitar pero no puedo obtener la proyección / coordenadas correctas. Hasta ahora he probado Google Mercator (EPSG: 900913) y WGS 84 (EPSG: 4326) sin suerte. Estoy usando OpenLayers para verificar los resultados y sigue colocando a Texas cerca del Golfo de Guinea (0 lat, 0 lng).

Respuestas:


23

No es ningún problema cargar el archivo de forma descargable directamente en QGIS.

Los datos están en EPSG: 3081, será mejor que los deje así. La API de Google espera valores largos, por lo que el CRS objetivo debe ser EPSG: 4326.

Simplemente haga clic derecho en la capa -> Guardar como ... para elegir el tipo de archivo GeoJSON, un nombre de archivo diferente y EPSG: 4326 como nuevo CRS. Puede agregar el resultado al lienzo para ver que se alinean ( On-the-fly-reprojectionseleccionado).


alguna forma de "guardar como" con múltiples capas?
chrismarx

No, cada archivo necesita un nombre de archivo de destino diferente. Puede usar ogr2ogr en la línea de comando para el procesamiento por lotes.
AndreJ

Parece como si tal vez el apoyo de procesamiento por lotes, que apoya cosas como los valores iniciales adecuados para la nomenclatura de archivos automática podrían emplearse enviar sólo los archivos resultantes en una carpeta
chrismarx

6

Aquí está la herramienta de conversión para shapefile a geojson a través del navegador web sin código del lado del servidor y compatible con la codificación que no está en inglés, solo necesita cargar el archivo zip y configurar la codificación para el texto correcto.

https://github.com/gipong/shp2geojson.js

Si utiliza esta biblioteca con la API ap3 v3 de Google Map, puede omitir el campo de código EPSG porque el archivo ZIP (PlanS172.zip) descarga del sitio web del Distrito de Senados del Estado de Texas contiene el archivo .prj.

loadshp({
    url: '/shp/PlanS172.zip', // path or your upload file
    encoding: 'big5' // default utf-8
}, function(geojson) {
    // geojson returned
});

ingrese la descripción de la imagen aquí


5

Vía línea de comando:

ogr2ogr -f GeoJSON -t_srs crs:84 output.geojson input.shp

Supongo que esto es lo que usa el cliente web de esta respuesta .


Acabo de probar. ¡Se comporta mucho mejor que QGIS cuando se trata del consumo de RAM!
Ikar Pohorský


-2

GeoJSON se basa en la notación de objetos de JavaScript. Aquí, en esta publicación, puede explorar diferentes métodos para convertir los archivos de forma en línea, fuera de línea o con la ayuda de API que puede utilizar. Así que mira esta publicación para convertir archivos de forma en archivos GeoJSON para usar en el mapa de Google.

Diferentes formas de convertir Shapefile a GeoJSON: en línea o fuera de línea o API


2
Se recomiendan enlaces a recursos externos, pero agregue contexto alrededor del enlace para que sus usuarios tengan una idea de qué es y por qué está allí. Siempre cite la parte más relevante de un enlace importante, en caso de que no se pueda acceder al sitio de destino o se desconecte permanentemente.
ArMoraer
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.