Tutorial de Mapbox Studio Classic [depreciado]

Mapbox Studio Classic es una aplicación de diseño de mapas de Mapbox. Utiliza únicamente la tecnología de teselas vectoriales y su objetivo es reemplazar y mejorar TileMill en funcionalidad. ¿Es cierto que reemplaza y mejora la funcionalidad de TileMill?.

Como ya hemos trabajado previamente con TileMill, intentaremos replicar lo que hicimos en aquel mega tutorial de Tilemill.

¿Qué es MapBox Studio Classic?

Al igual que Tilemill, Mapbox Studio es open source, sus estilos se basan en cartoCSS y tiene soporte para un amplio abanico de formatos (Shapefile, GeoJSON, KML, GPX, CSV, PostGIS)

Nuevas características:

  1. Teselas vectoriales. Mapbox Studio te da acceso instantáneo a la transmisión de datos globales masivos como Mapbox Streets, Mapbox Terrain, y Mapbox Satellite sin tener que importar los datos en nuestro ordenador.
  2. Tipografía. Mapbox Studio viene con más de 300 fuentes «pro» seleccionadas para su uso con la cartografía digital gracias a FontFont.
  3. Imágenes y efectos. Toma el control del impacto visual de tus mapas mediante el aprovechamiento de imágenes aéreas, texturas y efectos de composición, construidas directamente en el editor de estilo Mapbox Studio.
  4. Independencia en la resolución. Cada proyecto Mapbox Studio adapta automáticamente a HiDPI y pantallas de Retina haciendo posible diseñar mapas para múltiples pantallas y dispositivos a la vez. Prepara imágenes listas para imprimir de tus mapas de hasta 600 dpi utilizando la interfaz de usuario de la exportación de imágenes.

¿Qué son las teselas vectoriales?

Las teselas vectoriales son el equivalente a las teselas de imagen para la cartografía web.

Tienen la fortaleza de las teselas (almacenamiento en cache, escalado y rapidez en el renderizado). Una tesela vectorial además contiene todas las geometrías y sus metadatos  en un formato analizable compacto. Las teselas  vectoriales son un formato de gran rendimiento que proporcionan una mayor flexibilidad en términos de estilo, formato de salida, y la interactividad.

Descarga e instalación

La instalación es sencilla, ve a la web de Mapbox Studio Classic y haz clic sobre el botón de descarga. En la fecha de redacción de este artículo la versión disponible es la 0.3.3.

mapbox studio_download

El proceso de instalación es sencillo. Next, Next y Finish.

mapbox studio_install

Creando un mapa

Ahora vamos a crear teselas vectoriales de datos geográficos y usaremos estos datos para crear un estilo de mapa personalizado que muestre los datos en un mapa.

Para trabajar con MapBox Studio es necesario conectar con nuestra cuenta de MapBox, sino tienes cuenta será necesario crear una (con TileMill no era necesario)

Crear un proyecto fuente

Una vez abierto Mapbox Studio, hacemos clic en Projects, en la parte inferior izquierda. Esto abrirá una lista de nuestros proyectos. Nos aseguramos que la palanca Styles-Sources está sobre Sources y pinchamos sobre el botón New Project para comenzar.

mapbox studio_newproject

Desde la nueva ventana con los estilos y fuentes, vamos a crear una nueva fuente, seleccionamos pues New Source. Blank source.

En este punto tendremos un proyecto vacío, sin capas.

mapbox studio_newproject2

Añadiendo capas al proyecto, pero desde PostGIS

Haz clic en el botón New Layer.

Para importar un shapefile, un csv o un archivo simple iríamos al botón Browse ,lo seleccionaríamos y se añadiría sin más probelma, pero nosotros vamos a añadir una tabla desde PostGIS. Así que pinchamos sobre el texto PostGIS (en la parte inferior):

mapbox studio_postgis

En la siguiente pantalla aparece en primer lugar la pestaña Configure. Dónde debemos introducir los parámetros de la conexión. Necesitamos introducir un nombre para la conexión, una descripción y los datos de conexión a la base de datos espacial: servidor, puerto, usuario y contraseña.

En este caso los datos están en WGS84 y dejamos que la extensión  se detecte automáticamente.

mapbox studio_postgis_parametros

Ajustamos el control deslizante del tamaño de búffer (Buffer size) a 32. El buffer determina que  cantidad de datos adicionales se incluirán alrededor de los bordes de cada tesela y se puede utilizar para evitar que aparezcan efectos visuales de recorte cuando estilizamos los datos.

Por último vamos a la pestaña SQL y en el apartado de consultas escribimos la consulta SQL para acceder a los datos. Este campo actúa como una subconsulta.  Con la subconsulta ( SELECT * from cities ) AS ciudades, seleccionamos todos los campos  de la tabla ciudades.

mapbox studio_postgis_parametros_sql

Para finalizar pinchamos en Done, ahora podemos volver a la pestaña Fields para ver los campos de nuestra capa y, si lo deseamos,  añadir una descripción a los campos

Configuración del proyecto y guardado

Hacemos clic en el botón Settings para abrir el panel de configuración del proyecto. Podemos configurar la información sobre nuestro proyecto, como nombre, descripción, y la información de atribución. Cambiamos el nombre del proyecto a Ciudades, para que cuando se cargue seamos capaces de encontrarlo.

Guardamos el proyecto. Hacemos clic en el botón Save de la parte superior de la ventana para dar a nuestro proyecto fuente un nombre y una ubicación de almacenamiento.

mapbox studio_cities

Los proyectos fuente de Mapbox Studio se guardan como un directorio de archivos con un sufijo de .tm2source anexa automáticamente al nombre.

Carga de datos en Mapbox

Debemos subir nuestro proyecto a nuestra cuenta de Mapbox para poder dar estilo a nuestros datos. Para ello hacemos  clic en el botón Settings > Upload to  Mapbox.

 

mapbox studio_carga

Nuestro proyecto ya se ha convertido en teselas vectoriales que se pueden leer desde la API de Mapbox.

Dando estilo a nuestros datos

Hacemos clic en Projects en la parte inferior izquierda, lo que abrirá una lista de nuestros proyectos.

Cambiamos la palanca de Sources a Styles y a continuación clic en el botón New Project en la parte superior.

mapbox studio_estilos_nuevo_proyecto

Seleccionamos el estilo Mapbox Light para utilizarlo como mapa base.

Cambio de la fuente de las teselas vectoriales

Clic en Layers para abrir el panel de capas y luego clic en Change Source:

mapbox studio_change source

Esta parte es la más confusa a mi juicio.

Para añadir capas base de MapBox y además nuestros datos debemos añadir al lado del nombre de la capa base una coma y el Map ID de nuestra fuente de vectores al final de la lista de fuentes:

mapbox studio_cities_mas streets

Clic en Apply después de haber introducido en la caja de texto el Map ID completo.

Añadir una ficha de estilos para simbolizar nuestros datos

Hacemos clic en el botón + en la parte superior derecha del editor de estilo para añadir una nueva pestaña. Ponemos como nombre cities:

mapbox studio_estilos_cities

Agregamos el siguiente CartoCSS en nuestra hoja de estilos cities y luego haga clic en Save.

#cities {
 [pop_max >= 100000] { marker-width:3; }
 [pop_max >= 1000000] { marker-width:6; }
 [pop_max >= 5000000] { marker-width:10; }
 [pop_max >= 10000000] { marker-width:14; }
 [pop_max >= 100000000]{ marker-width:20; }
 }

Es un estilo sencillo basado en filtros con tamaños de circunferias mayores para ciudades con población mayor. No es objetivo de este tutorial adentrarnos en cartoCSS.

mapbox studio_resultado

Subida del estilo a MapBox

Subimos nuestro proyecto a MapBox haciendo clic en el botón Settings > Upload to Mapbox.

mapbox studio_subir estilos

El plan básico de MapBox nos permite subir un único estilo a nuestra cuenta. Suficiente para testeo de la aplicación:

mapbox studio_estiloen mapbox

Listo!

Nuestro estilo de mapa se ha desplegado en Mapbox y tiene su Map ID, que podemos usar con cualquiera de las API para desarrolladores de Mapbox para integrarla en nuestras aplicaciones.

¿Es mejor MapBox Studio Classic que Tilemill?

Ventajas para TileMill

La interfaz de MapBox Studio es menos intuitiva y práctica que TileMill. Debemos tener claro los conceptos de proyecto fuente y proyecto de estilo.

Lleva tiempo entender cómo importar un shape, en nuestro caso importar una capa de PostGIS no habría sido posible si no hubiéramos seguidos las instrucciones del tutorial de Tilemill.

No se pueden guardar los parámetros de conexión a una base de datos PostGIS. Para cada nueva tabla,  nueva conexión y escribir todos los parámetros desde cero. Sobre esto ya hay varias quejas en los foros de gis.stackexchange.com

TileMill está muy bien documentado, con un montón de ejemplos.

MapBox Studio permite exportar los SHP a teselas vectoriales, pero previamente es necesario subirlas al servidor de MapBox si queremos personalizar el estilo de nuestras teselas. Y una vez creado el estilo, para trabajar con él y compartirlo en MapBox, la cuenta básica (Starter) solo nos permite subir un único estilo. Con TileMill podemos subir los mbtiles y tenemos hasta 100 MB

Ventajas para MapBox Studio

Las teselas vectoriales ofrecen muchas ventajas, en términos de:

  • Rendimiento.
  • Flexibilidad de estilo.
  • Formatos de salida.
  • Nueva interactividad.

Conclusión

Las capas de TileMill se pueden exportar con su estilo como .mbtiles y alojarse en otro lugar. Lamentablemente el programa no ha sido actualizado desde hace 2 años, y probablemente no será actualizado nunca más.

Con MapBox Studio debemos alojar nuestros estilos personalizados en MapBox. Estamos pillados.

El modelo comercial de Mapbox se basa en que ellos sirven nuestros datos de mapa, y hay razones de negocio comprensibles para el cambio hacia las capas vectoriales…

¿Quieres aprender a crear mapas online? Inscríbete en nuestro curso online aplicaciones GIS en la nube.