Nota: En Looker 22.14, se agregó compatibilidad con archivos GeoJSON al parámetro map_layer
.
Looker incluye varias capas de mapas integradas, pero también puedes definir regiones de mapas personalizadas para mostrar datos geográficos. Supongamos que tienes una tabla de edades promedio de tres barrios, como se muestra a continuación:
Barrio del cliente | Edad promedio del cliente |
---|---|
centro | 19.5292 |
este | 54.4626 |
lado oeste | 34.9534 |
Te recomendamos que asignes el atributo Customer Neighborhood a una región geográfica particular para que se pueda visualizar en un mapa. Para lograrlo, sigue la los pasos que se describen en esta página.
Prepara los datos de la región
Para preparar los datos de la región, necesitas un archivo de datos que contenga la ubicación formas de cada región y también contiene metadatos que la asocian con los datos en la base de datos.
Looker usa un formato llamado TopoJSON para almacenar estos datos de forma compacta. Los archivos TopoJSON pueden crearse fácilmente a partir de muchos archivos shapefile comunes o dibujar uno con herramientas en línea, como se detalla en el Publicación de Comunidad sobre cómo convertir archivos shapefile en TopoJSON
A los efectos de este ejemplo, ya habría un archivo TopoJSON preparado que proporcione esta asignación. Cada región del archivo TopoJSON tiene una propiedad llamada neighborhood
que coincide con los valores de las
El campo Vecindario del cliente, que se define en el proyecto de LookML como una dimensión llamada neighborhood
.
Sube los datos de la región
Para importar los datos de la región a Looker, puedes arrastrar y soltar el archivo TopoJSON en la sección File Browser del proyecto. Estos datos se confirmarán junto con el código de LookML y se actualizarán como cualquier otro código en un proyecto de LookML.
Cómo crear la capa del mapa
Ahora que tienes los datos de la región en el proyecto, debes crear una capa de mapa en el modelo de LookML.
Puedes agregar una definición en el archivo de modelo con el parámetro map_layer
:
map_layer: my_neighborhood_layer { file: "neighborhoods.topojson" property_key: "neighborhood" }
El parámetro file
hace referencia al nombre del archivo en el proyecto que contiene los datos de la región, y property_key
es la propiedad del conjunto de datos que quieres exponer en Looker. Si no sabes cuál es la clave, simplemente omite la clave de propiedad y Looker intentará seleccionar la clave adecuada.
Sugerencia: También puedes usar un archivo TopoJSON alojado en otro lugar en línea. Para ello, especificaurl
en lugar defile
en la definición de la capa:
map_layer: my_neighborhood_layer { url: "https://raw.githubusercontent.com/cooluser/JSON_Stuff/master/Neighborhoods.topoJSON" property_key: "neighborhood" }
Cómo asociar la capa del mapa con datos
Lo único que queda por hacer es asociar la dimensión neighborhood
de la vista con la capa de mapa recién creada aplicando el parámetro map_layer_name
.
dimension: neighborhood { sql: ${TABLE}.neighborhood ;; map_layer_name: my_neighborhood_layer }
Esto le indica a Looker que los valores de esta dimensión están asociados con el property_key
que expone la capa del mapa. También le permite a Looker saber que es posible mostrar estos datos en un mapa.
Cómo ver el mapa
Las consultas que utilizan la dimensión neighborhood
ahora se pueden mostrar en un mapa desde la página Explorar: