Geo JSON

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 22 de diciembre de 2018; las comprobaciones requieren 7 ediciones .
Geo JSON
Extensión ..json, .geojson
tipo MIME aplicación/vnd.geo+json
Desarrollador Consejo de Ingeniería de Internet
Tipo de formato formato de archivo SIG
Expandido desde JSON
formato abierto ?
Sitio web geojson.org

GeoJSON  es un formato abierto para almacenar estructuras de datos geográficos basados ​​en JSON .

El formato puede almacenar tipos primitivos para describir objetos geográficos, tales como: puntos (direcciones y ubicaciones), líneas (calles, carreteras, fronteras), polígonos (países, estados, parcelas de tierra). También se pueden almacenar los llamados multitipos, que son la unión de varios tipos primitivos.

El formato GeoJSON se diferencia de otros estándares GIS en que no fue escrito ni mantenido por ninguna organización de estándares, sino por un grupo de trabajo de desarrolladores.

Un desarrollo posterior de GeoJSON es TopoJSON , una extensión de GeoJSON que codifica la topología geoespacial y, por lo general, proporciona tamaños de archivo más pequeños.

Historia

El formato GeoJSON comenzó a ser discutido por el grupo de trabajo en marzo de 2007 [1] y la especificación final del estándar estuvo lista en junio de 2008.

Ejemplo

{ "tipo" : "FeatureCollection" , "características" : [ { "tipo" : "Característica" , "geometría" : { "tipo" : "Punto" , "coordenadas" : [ 102.0 , 0.5 ]}, "propiedades" : { "prop0" : "valor0" } }, { "tipo" : "Característica" , "geometría" : { "tipo" : "LineString" , "coordenadas" : [ [ 102.0 , 0.0 ], [ 103.0 , 1.0 ] , [ 104.0 , 0.0 ], [ 105.0 , 1.0 ] ] }, "propiedades" : { "prop0" : "valor0" , "prop1" : 0.0 } }, { "tipo" : "Característica" , "geometría" : { "tipo" : "Polígono" , "coordenadas" : [ [ [ 100.0 , 0.0 ], [ 101.0 , 0.0 ], [ 101.0 , 1.0 ], [ 100.0 , 1.0 ], [ 100.0 , 0.0 ] ] ] }, "propiedades" : { "prop0" : "valor0" , "prop1" : { "esto" : "eso" } } } ] }

Objetos

tipos primitivos
Tipos Ejemplos
punto { "tipo" : "Punto" , "coordenadas" : [ 30 , 10 ] }
LineString { "tipo" : "LineString" , "coordenadas" : [ [ 30 , 10 ], [ 10 , 30 ], [ 40 , 40 ] ] }
Polígono { "tipo" : "Polígono" , "coordenadas" : [ [[ 30 , 10 ], [ 40 , 40 ], [ 20 , 40 ], [ 10 , 20 ], [ 30 , 10 ]] ] }
{ "tipo" : "Polígono" , "coordenadas" : [ [[ 35 , 10 ], [ 45 , 45 ], [ 15 , 40 ], [ 10 , 20 ], [ 35 , 10 ]], [[ 20 , 30 ], [ 35 , 35 ], [ 30 , 20 ], [ 20 , 30 ]] ] }
multitipos
Tipos Ejemplos
multipunto { "tipo" : "MultiPunto" , "coordenadas" : [ [ 10 , 40 ], [ 40 , 30 ], [ 20 , 20 ], [ 30 , 10 ] ] }
MultiLineString { "tipo" : "MultiLineString" , "coordenadas" : [ [[ 10 , 10 ], [ 20 , 20 ], [ 10 , 40 ]], [[ 40 , 40 ], [ 30 , 30 ], [ 40 , 20 ], [ 30 , 10 ]] ] }
multipolígono { "tipo" : "MultiPolygon" , "coordenadas" : [ [ [[ 30 , 20 ], [ 45 , 40 ], [ 10 , 40 ], [ 30 , 20 ]] ], [ [[ 15 , 5 ], [ 40 , 10 ], [ 10 , 20 ], [ 5 , 10 ], [ 15 , 5 ]] ] ] }
{ "tipo" : "MultiPolygon" , "coordenadas" : [ [ [[ 40 , 40 ], [ 20 , 45 ], [ 45 , 30 ], [ 40 , 40 ]] ], [ [[ 20 , 35 ], [ 10 , 30 ], [ 10 , 10 ], [ 30 , 5 ], [ 45 , 20 ], [ 20 , 35 ]], [[ 30 , 20 ], [ 20 , 15 ], [ 20 , 25 ], [ 30 , 20 ]] ] ] }

Uso

GeoJSON es compatible con muchos paquetes de software de mapas y GIS , incluidos OpenLayers , [2] Leaflet , MapServer , [3] software Geoforge , [4] GeoServer , [5] GeoDjango , [6] GDAL , [7] Safe Software FME , [ 8] y CartoDB . [9] Además, puede usar GeoJSON con PostGIS [10] y Mapnik , [11] , ambos funcionan con el formato usando la biblioteca GDAL OGR. Servicios en línea Bing Maps , Yahoo! y Google también admiten GeoJSON en sus API.

La API de Javascript de Google Maps v3 admite directamente la integración de capas de datos GeoJSON [12] desde el 19 de marzo de 2014. [13]

GitHub también es compatible con GeoJSON [14] y la exportación Potrace GeoJSON .

TopoJSON

TopoJSON es una evolución de GeoJSON. En lugar de representar características geográficas de forma aislada, TopoJSON las une en entidades únicas llamadas arcos [ 15 ]. Los arcos son una secuencia de puntos, mientras que las líneas y los polígonos son una secuencia de arcos. Cada arco se define solo una vez, pero se puede usar varias veces en varias formas, lo que reduce la redundancia y el tamaño del archivo.

La especificación para el formato TopoJSON está alojada en GitHub [16] .

Esquema TopoJSON

Un ejemplo de una descripción de un objeto ubicado cerca de las coordenadas del paralelo cero y latitud cero. Simple, pero contiene todos los tipos de geometría necesarios: Polígonos ( Polygon ), Líneas ( LineString ), Puntos ( Point ), Arcos ( arcs ) y Descripciones :

{ "tipo" : "Topología" , "transformar" : { "escala" : [ 1 , 1 ], "traducir" : [ 0 , 0 ] }, "objetos" : { "dos cuadrados" : { "tipo" : "GeometryCollection" , "geometrías" : [ { "tipo" : "Polígono" , "arcos" : [[ 0 , 1 ]], "propiedades" : { "nombre" : "Left_Polygon" }}, { "tipo" : "Polygon" , "arcs" : [[ 2 , - 1 ]], "properties" : { "name" : "Right_Polygon" }} ] }, "one-line" : { "type" : "GeometryCollection" , "geometrías" : [ { "tipo" : "LineString" , "arcos" : [ 3 ], "propiedades" : { "nombre" : "Under_LineString" }} ] }, "dos lugares" : { "tipo" : "GeometryCollection" , "geometrías" : [ { "tipo" : "Punto" , "coordenadas" : [ 0 , 0 ], "propiedades" : { "nombre" : "Punto_Origen" }}, { "tipo" : "Punto " , "coordenadas" : [ 0 , - 1 ], "propiedades" : { "nombre" : "Under_Point" }} ] } }, "arcos" : [ [[ 1 , 2 ],[ 0 , - 2 ]] , [[ 1 , 0 ],[ - 1 , 0 ],[ 0 , 2 ],[ 1 , 0 ]], [[ 1 , 2 ],[ 1 , 0 ],[ 0 , - 2 ],[ - 1 , 0 ]], [[ 0 , - 1 ],[ 2 , 0 ]] ] }

Notas

  1. Marzo de 2007 Archivos por hilo . Consultado el 12 de octubre de 2015. Archivado desde el original el 8 de septiembre de 2018.
  2. アーカイブされたコピー. Consultado el 16 de marzo de 2010. Archivado desde el original el 16 de marzo de 2010.
  3. Salida basada en plantillas: documentación de MapServer 7.0.0 . Consultado el 12 de octubre de 2015. Archivado desde el original el 16 de marzo de 2017.
  4. Documentación - Folleto - una biblioteca de JavaScript para mapas interactivos . Consultado el 12 de octubre de 2015. Archivado desde el original el 15 de agosto de 2018.
  5. Codehaus Archivado el 13 de diciembre de 2009.
  6. GeoDjango Archivado el 7 de septiembre de 2009.
  7. アーカイブされたコピー. Consultado el 9 de octubre de 2009. Archivado desde el original el 15 de abril de 2009.
  8. アーカイブされたコピー. Fecha de acceso: 24 de julio de 2008. Archivado desde el original el 24 de julio de 2008.
  9. CartoDB.js - CartoDB Docs (enlace descendente) . Consultado el 12 de octubre de 2015. Archivado desde el original el 27 de junio de 2014. 
  10. アーカイブされたコピー. Consultado el 1 de junio de 2010. Archivado desde el original el 1 de junio de 2010.
  11. アーカイブされたコピー. Consultado el 2 de mayo de 2009. Archivado desde el original el 2 de mayo de 2009.
  12. Capa de datos: Simple | API de JavaScript de Google Maps | Desarrolladores de Google . Consultado el 12 de octubre de 2015. Archivado desde el original el 30 de diciembre de 2016.
  13. Blog de desarrolladores de Google: Maps simplificado: GeoJSON en JavaScript Maps API . Consultado el 12 de octubre de 2015. Archivado desde el original el 4 de marzo de 2016.
  14. Hay un mapa para ese GitHub . Consultado el 12 de octubre de 2015. Archivado desde el original el 27 de septiembre de 2016.
  15. mbostock/topojson-specification GitHub . Consultado el 12 de octubre de 2015. Archivado desde el original el 11 de junio de 2018.
  16. topojson-specification/README.md en master mbostock/topojson-specification GitHub . Consultado el 12 de octubre de 2015. Archivado desde el original el 8 de diciembre de 2021.

Literatura

Enlaces