Publicación de mapas en internet: AWS y CARTO

Hace unas semanas se anunció que El Salvador podría convertirse en el primer país de Latinoamérica en contar con el primer centro de capacitación de cloud computing bajo el cobijo de Amazon Web Services (AWS). Independientemente de esa noticia la publicación de mapas en internet es sumamente útil y en esta entrada explicamos como utilizar AWS y CARTO como herramientas de publicación de mapas en la web

BREVE INTRODUCCIÓN AL CLOUD COMPUTING

El cloud computing consiste en la posibilidad de ofrecer servicios a través de internet.

La computación en la nube es una tecnología que busca tener todos los archivos e información en internet, sin preocuparse por poseer la capacidad suficiente para almacenar información en nuestra computadora.

A continuación, se presentan algunas ventajas y desventajas de este tipo de plataforma.

Ventajas:

  • Mejor integración con servicios en red debido a que por su naturaleza toda la información y procesos están alojados de forma centralizada y en internet
  • Accesibilidad mundial a través de internet
  • Independencia de la instalación de hardware y software físico
  • Portabilidad de la información en multiplataforma
  • Implementación rápida pues los servidores de servicios normalmente pueden configurar y ofrecer una instancia en cuestión de minutos
  • Actualizaciones automáticas
  • Uso eficiente de la energía pues solo se ocupa bajo demanda

Desventajas

  • La centralización tiene su desventaja desde el punto de vista que hay una dependencia del proveedor de servicios y sus aplicaciones vinculadas
  • Normalmente es necesario el acceso de internet para poder acceder a las aplicaciones
  • La confiabilidad está en función de la capacidad y estabilidad de la empresa proveedora de servicios
  • La mayoría de aplicaciones cloud computing son aun para servicios básicos como almacenamiento y ofimática
  • Se necesitan protocolos de comunicación robustos y seguros para evitar la vulnerabilidad de la información

La arquitectura de la computación en la nube esta categorizada en 3 tipos que se explican brevemente a continuación.

Software como servicio (SaaS)

Es la forma mas popular de servicio del cloud computing, el servicio se ofrece como una aplicación final no modificable, ejemplos de esta categoría son las aplicaciones de almacenamiento como Dropbox y Google Drive o las aplicaciones de ofimática como Microsoft 360.

Plataforma como servicio (PaaS)

Es una capa intermedia de servicios en la cual se ofrecen entornos de desarrollo a través de aplicaciones en internet, ejemplos de este tipo de servicios son la Google App Engine y la Microsoft Azure.

Infraestructura como servicio (IaaS)

Son aplicaciones que ofrecen servicios de hardware virtual y de almacenamiento como por ejemplo Amazon Web Services que a través de sus servicios EC2 permite crear maquinas virtuales con especificaciones a solicitud del usuario y el S3 que es un servicio de almacenamiento

¿QUÉ ES CARTO DB?

CARTO es una plataforma de servicios en la nube del tipo Software as a Service (SaaS) que proporciona herramientas GIS y de mapeo web.

CARTO es un software de código abierto construido sobre PostGIS y PostgreSQL y ofrece dos propuestas principalmente:

  • CARTO Builder: que es la aplicación web donde los usuarios gestionan los datos, realizan análisis y diseñan mapas. Esta enfocada a usuarios que no son desarrolladores, aunque también tiene la posibilidad de acceder a codificaciones SQL y CSS
  • CARTO Engine: es un conjunto de API y bibliotecas para desarrolladores
Interfaz del dashboard de CARTO Builder

ENCUESTA DE HOGARES PARA PROPÓSITOS MÚLTIPLES EL SALVADOR

La Encuesta de Hogares de Propósitos Múltiples (EHPM) es un instrumento estadístico realizado anualmente en el territorio de El Salvador por la Dirección General de Estadísticas y Censos (DIGESTYC) desde el año de 1975. Por su naturaleza permite dar seguimiento a la evolución de indicadores de mucha relevancia asociados a las condiciones de vida de la población tales como educación, características de vivienda, mercado laboral, salud, remesas y gastos de los hogares.

Actualmente la base de planificación y análisis de la EHPM es los resultados de población de 2007 lo cual ya presenta una desventaja porque las inferencias que se hacen están realizadas en información con mas de 10 de años de antigüedad.

La motivación principal de elaborar el mapa en CARTO con esta información es que la información de los resultados presentada en el documento final esta principalmente de forma tabular y en el análisis de los datos únicamente aparecen 2 mapas (a pesar de que en los créditos del documento aparecen 11 encargado del área de cartografía)

La información departamental, resultado de la EHPM, esta principalmente presentada en forma tabular

PROCEDIMIENTO DE ELABORACIÓN Y PUBLICACION DEL MAPA EN CARTO DB

ARCHIVOS BASE PARA LA ELABORACIÓN DEL MAPA

La primera etapa de la compilación de información para la generación del mapa consistió en generar una hoja de cálculo donde se transcribieran los 78 indicadores por departamento puesto que la información esta únicamente contenida en las tablas que se mostraron previamente pero que a su vez están contenidas en un archivo PDF y por tanto no editable.

Transcripción de la información a formato tabular en una hoja de cálculo

La base cartográfica a utilizar es un archivo de tipo Shapfile conteniendo los polígonos que definen los departamentos de El Salvador y que puede descargarse de este enlace https://www.cnr.gob.sv/geoportal/LIMITES_WGS_84_.zip

Base cartográfica a utilizar

Se realizó un proceso de integración entre la información tabular y la cartográfica utilizando un atributo en común utilizando QGIS habiendo exportado previamente la tabla de la hoja de cálculo a formato CSV para poder introducirla en QGIS.

Integración entre la información tabular y la cartográfica

Finalmente, con la información integrada se realizó una exportación a un archivo Shapefile nuevo que será el que se subirá a CARTO para la generación del mapa.

Es importante decir que esta integración también es posible realizarla directamente en CARTO y mas adelante se mostrará la forma de realizarla.

CARGA DE ARCHIVOS EN CARTO DB

Una práctica recomendable para la subida de archivos que están configurados como Shapefile a CARTO es unir todos los archivos vinculados al Shapefile en un solo archivo ZIP y subir ese archivo creando un nuevo data set en CARTO

Interfaz de subida de dataset a CARTO

GENERACIÓN DEL LAYER DE POBLACIÓN VINCULADO A UN POLÍGONO

El diseño final mapa se pensó considerando como capa de mapa base el mapa por default que preconfigura CARTO y encima de el los polígonos departamentales con un estilo que estuviera en función de la cantidad de población además de una leyenda que sirviera para tener una referencia de la vinculación del color y el valor de población sin la necesidad de colocar la etiqueta y tener mas limpio el mapa para otra información más asimilable.

Visualización preliminar base del mapa

GENERACIÓN DE UN POP UP CON IMAGEN

Con el fin de poder hacer mas atractivo visualmente la información y debido a que CARTO no permite al usuario final la manipulación de la visualización de la información vinculada a la tabla, sino que más bien hay que crear previamente varias capas de forma individual se pensó en la incorporación de un pop up que incluyera una imagen representativa de del departamento y algunos indicadores económicos representativos de la EHPM.

Para que CARTO pueda identificar que imagen colocar es necesario crear una columna nueva en la tabla en formato de string donde se ubique la URL de la imagen. Para evitar colocar imágenes genéricas con URL obtenidos de búsquedas de Google que pueden ser borradas en el futuro se procedió a la descarga de imágenes resultados de la búsqueda y posteriormente se subieron a Google Drive.

Un aspecto importante a mencionar es que una vez subidas las imágenes a Google Drive el enlace generado para compartir la imagen no es útil para CARTO entonces hay que hacer un cambio. Al generar el enlace habrá una parte de ese enlace que tendrá una serie de letras, números y símbolos posterior a un texto que dice “…id..” esa secuencia de caracteres deberá de introducirse posterior a este texto http://drive.google.com/uc?export=view&id= y esto si generará un enlace que si puede ser interpretado por CARTO.

Inserción de columna con URL de referencia para las imágenes del encabezado del pop up

Ya con ese cambio realizado se selecciona el pop up adecuado y los indicadores a mostrar y el resultado se presenta en la siguiente imagen.

Mapa con pop up con imagen

GENERACION DEL LAYER DE PORCENTAJE DE POBLACIÓN VINCULADO AL CENTROIDE DE UN POLIGONO

Para poder generar un resultado fácilmente interpretable por el usuario y poder tomar ventaja de otro sistema de representación se creó una segunda capa vinculada a información puntual.

Para ello se calculó el centroide del polígono departamental a través de QGIS y se generó un archivo CSV que contenía únicamente un ID de los elementos, el valor porcentual de la población y la coordenada de longitud y latitud.

Determinación del centroide de los polígonos departamentales

Es importante mencionar que CARTO permite generar análisis en las capas creadas y dentro de esos análisis esta la determinación del centroide de un polígono, pero por alguna razón al realizar este análisis se borran los demás atributos y entonces no es posible generar representaciones vinculadas a estos puntos.

CARTO tiene la posibilidad de poder calcular el centroide de polígonos en su sección de análisis

Una vez cargado el nuevo archivo CSV puesto que solo es un archivo que contiene información de tipo tabular, CARTO nos pedirá realizar una geocodificación para lo cual habrá que tirar de otra opción de análisis que tiene.

Puesto que en el nuevo dataset CARTO no puede vincular automáticamente la información geográfica habrá que realizar un proceso de geocodificación

Luego se crea una nueva columna en tabla y se utiliza un cálculo con SQL para determinar el porcentaje de población por departamento.

Código SQL para rellenar una columna con el porcentaje de la población

Por último, se realiza la configuración de la representación de la nueva capa y se configura de manera tal que el color y tamaño del punto esté en función del valor porcentual de la población.

Configuración de la representación puntual

RESULTADO

Posterior a la configuración anterior ya podemos publicar nuestro mapa y la apariencia final es la siguiente

Resultado final

PUBLICACIÓN DEL MAPA EN AWS S3

Para la publicación del mapa a través de el servicio de alojamiento S3 de Amazon Web Services (AWS) en necesario seguir los siguientes pasos.

Realizamos la publicación de nuestro mapa en CARTO y copiamos el código HTML de la opción de incorporar.

Publicación del mapa en CARTO

Copiamos el código en un block de notas añadiendo la etiqueta <html> de apertura y cierra al principio y final del documento y guardamos el archivo con extensión HTML

Durante la creación del bucket debemos quitar el check en la casilla de bloqueo de acceso público

Luego en la consola de AWS utilizamos el servicio S3 y creamos un nuevo bucket que tendremos que configurar con acceso público.

Durante la creación del bucket debemos quitar el check en la casilla de bloqueo de acceso público

Luego tenemos que configurar el bucket para el alojamiento de un sitio web estático.

Selección de tipo de alojamiento

En la configuración debemos de indicar el nombre del archivo principal que contendrá la información de la página web y que deberá de ser igual que el nombre del archivo HTML que hemos creado antes.

Indicación del documento índice

Luego se debe de digitar el siguiente código en la política del bucket donde “cartoad4ig” es el nombre que se le dio al bucket cuando se creó.

Edición de la política del bucket

Por último, se carga el archivo HTML que creamos previamente en el block de notas

Carga de archivo HTML

Luego la dirección de alojamiento tendrá el siguiente formato: http://example-bucket.s3-website.region.amazonaws.com

El texto en rojo se tendrá que reemplazar por el nombre del bucket creado y por la región en la cual fue creado respectivamente.

Para nuestro caso el mapa puede encontrarse a través del siguiente enlace: http://cartoad4ig.s3-website.us-east-1.amazonaws.com/

Espero que esta entrada haya sido interesante para ti y que hayas aprendido mucho. Si hubiera alguna duda no dudes en dejarla en los comentarios mas abajo o a través de nuestras redes sociales que a la mayor brevedad posibles las estaremos respondiendo. Si te ha gustado te invito a que la compartas para que este conocimiento llegue a mas y mas personas. Hasta la próxima


Otras entradas que te pueden interesar:


Edgard Santiago Granados ,director general de Alfa Geomatics, es Máster en Ingeniería Geodésica y Cartografía por la Universidad Politécnica de Madrid (UPM-España) e Ingeniero Civil por la Universidad Centroamericana José Simeón Cañas (UCA-El Salvador) . Ha sido profesor universitario de ciencias físicas en la Universidad Centroamericana José Simeón Cañas (UCA) y de topografía en la Universidad José Matías Delgado (UJMD)

DEJANOS TUS COMENTARIOS Y SÍGUENOS EN NUESTRAS REDES SOCIALES:

Facebook Comments
Compartir: