GeoCSV, GeoPackage y GeoJSON: ¿las nuevas alternativas al shapefile?

Durante los últimos años han surgido diversos formatos vectoriales que se presentan como alternativas al shapefile: GeoCSV, GeoPackage, GeoJSON o Geobuf.

geocsv vs geojson vs geopackage: ¿alternativas al shapefile?

Pese al elevado número de desventajas e inconvenientes que tiene el shapefile, es el formato más extendido y popular entre la comunidad GIS. Aunque parecen que las cosas empiezan a cambiar… vamos a ver cómo son los nuevos formatos y si realmente son una alternativa al shapefile.

¿Qué es GeoCSV?

GeoCSV es una especificación muy reciente (año 2015) del formato de archivo tabular CSV (Comma-separated values) con una extensión opcional de geometría.

Tiene dos variantes: la opción Punto X/Y o la opción WKT.

  • La opción WKT es la preferida, ya que se almacena en una única columna de tipo String el constructor, por ejemplo «POINT (-4.5454 45.2211)», lo que significa -4.5454 oeste y 45.2211 norte (longitud/latitud). Esta opción soporta los tipos de geometría Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon e incluso GeometryCollection y ARCos.

Un archivo .csv espacial tendría un aspecto como este:

  • La opción «Point(X/Y)» solo puede almacenar puntos. Este tipo de geometría puntual se almacena en dos columnas: longitud, latitud (x/y). Ejemplo para dos columnas de coordenadas lon y lat es «8,8249; 47.2274».

En cualquier caso el sistema de coordenadas por defecto es WGS84 (EPSG:4326) y la codificación de caracteres UTF8.

Es posible abrir un GeoCSV con QGIS o con OGR. Para cargar, editar o guardar GeoCSV en QGIS, es necesario utilizar el plugin Editable GeoCSV.

Otras aplicaciones genéricas que trabajan con GeoCSV son LibreOffice, Excel, Kettle o Python.

La ventaja es que estos ficheros es que ocupan poco espacio y es fácil compartirlos.

¿Realmente GeoCSV es una opción de futuro?

Aunque tiene más capacidad que un shapefile, es un formato un poco espartano y con poca capacidad para datos de gran tamaño. Además solo puede almacenar una capa por archivo.

Al igual que el shapefile puede ir acompañado de archivos auxiliares, como CSVT (CSV types, contiene la información del tipo de campo: el esquema), PRJ (contiene la información sobre el Sistema de Referencia Espacial), CSVZ (formato de compresión en formato ZIP).

¿Qué es GeoPackage?

GeoPackage es un formato de archivo universal para compartir y transferir datos espaciales vectoriales y raster. Es por tanto la alternativa moderna (nace en 2014) a formatos como el GeoTIFF y especialmente el Shapefile.

Es abierto, basado en estándares de la OGC, independiente de plataformas o aplicaciones y se trata un formato compacto. Se ha construido sobre la base de SQLite, por lo que necesitarás saber SQL para utilizar GeoPackage en cualquier sistema operativo de escritorio o móvil.

La especificación GeoPackage describe un conjunto de convenciones para el almacenamiento en una base de datos SQLite de:

  • entidades vectoriales.
  • un conjunto de matriz de teselas de imágenes y mapas raster a diferentes escalas.
  • esquema.
  • metadatos.
  • extensiones.

Como es una base datos, soporta el uso directo, lo que significa que podemos acceder y actualizar sus datos en un formato de almacenamiento nativo sin necesidad de conversiones intermedias.

¿Qué programas abren y editan GeoPackage?

QGIS, ArcGIS 10.3 y ArcGIS Pro soportan la lectura de GeoPackages vectoriales. Otros programas que soportan GeoPackages, entre otros son: GDAL, GeoServer (sirviendo los datos como estándar web de la OGC), GeoTools, OpenJUMP PLUS, Skyline, Luciad, Envitia MapLink, SpatiaLite, FME Desktop y FME Server, TerraGO.

GeoPackage_QGIS
Ventana de dialogo de QGIS para abrir un archivo GeoPackage o PaqueteGeo
GeoPackage_ArcGIS
Previsualización de un archivo GeoPackage desde ArcCatalog

Aquí puedes descargar algunos datos de ejemplo.

¿GeoPackage tiene futuro?

Casi todos los software GIS de referencia son capaces de leer el formato vectorial y raster de GeoPackage. Poco a poco también serán capaces  de escribir sobre este formato. Además existen versiones para móviles (Android y pronto iOS).

GeoPackage destaca por su flexibilidad y se puede utilizar de muchas maneras, por lo que puede reemplazar parcialmente al formato shapefile.

Cabe destacar que organizaciones del gobierno de Estados Unidos están explorando formas de distribuir los datos geoespaciales en este formato.

¿Qué es GeoJSON?

GeoJSON es un formato de intercambio de datos geoespaciales basado en JSON (Javascript Object Notation). GeoJSON define la gramática basada en un estándar del OGC (WKT).

Este formato fue el primero en llegar de los tres que comentamos en este artículo: apareció en 2008 y soporta los siguientes tipos de geometría: Point, LineString, Polygon, MultiPoint, MultiLineString, y MultiPolygon. Las listas de geometrías se representan por una GeometryCollection.

Es un formato simple, ligero y sencillo. Muy popular en las aplicaciones webmapping, porque se trata de un formato de texto que es muy rápido de analizar en máquinas virtuales Javascript.

Podemos partir de un shapefile y convertirlo a geoJSON para crear un sencillo mapa web.

¿Realmente GeoJSON tiene futuro?

Más que futuro es ya un presente: desde el año 2008 está implantado y estandarizado en muchas aplicaciones webmapping.

Los navegadores web no impiden el intercambio de datos en formato JSON, por lo que estos formatos son una alternativa al formato GML, y además es más ligero.

TopoJSON es una extensión de GeoJSON que codifica topología. Mucho más ligero aun que un GeoJSON, aunque su estandarización es más complicada, se utiliza sobre todo en visores web mapping construidos con d3.js.

Conclusión

GeoJSON es un sustituto perfectamente adecuado del Shapefile en muchos escenarios (visualización e intercambio de datos). Tanto GeoPackage como GeoJSON superan muchas de las limitaciones de Shapefile. No sucede lo mismo con GeoCSV, un formato tosco que aporta pocas ventajas frente a un shapefile.

GeoPackage es un formato más complejo que GeoJSON, pero proporciona una serie de capacidades adicionales que algunos escenarios demandan: como las capacidades de una base de datos, la interoperabilidad de apps y servicios web en un ambiente móvil o el uso con aplicaciones tanto comerciales como de código abierto.

Let’s connect!

Date de alta en nuestro newsletter
y recibe este ebook gratuito

Y una vez al mes recibirás las últimas novedades del sector GIS y de nuestros cursos

6 comentarios en “GeoCSV, GeoPackage y GeoJSON: ¿las nuevas alternativas al shapefile?”

  1. Muy buenas he estado revisando ya muchos artículos sobre GIS son muy buenos y cada vez aprendo más cosas. Bueno me gustaría que m ayudarán con algunos sitios, articulos cientificos en sí mucha informacion para construir un GIS web ya que estudio ingenieria de sistemas y mi tema de tesis es la construccion precisamente de un GIS. Agradecería su respuesta y muchas gracias por todo.

  2. Hola … tengo aneado hacer ina herramienta de gestión y edición de datos vectoriales de manera colaborativa con open layers … cual formato de transferencia me recomiendas …

  3. Me gustaría saber tu opinión de Spatial Lite, he leído que también es bien aceptado y ya lleva un buen rato como GeoJson, es mas me gustaria saber como le va contra GeoPackpage.
    Gracias por el post, muy util.

    • Hola Phipex,
      Gracias por comentar.
      Pues es que estamos hablando prácticamente de lo mismo, ya que SpatiaLite, al igual que GeoPackaget, se basa en SQLite. Se puede utilizar SpatiaLite para extender la capacidad espacial de GeoPackage, ya que GeoPackage tiene un núcleo más pequeño… Spatial Lite y PostGIS son dos de las bases de datos más potentes y con capacidades SIG, pero trabajando en ambiente móvil o para intercambio de datos parece mejor trabajar con GeoPackage, además parece que tiene mucho más futuro…

Los comentarios están cerrados.