Créer des régions de carte personnalisées

Remarque:Dans Looker 22.14, les fichiers GeoJSON ont été ajoutés au paramètre map_layer.

Looker inclut plusieurs calques de carte intégrés, mais vous pouvez également définir des régions de carte personnalisées pour afficher des données géographiques. Supposons que vous disposiez d'un tableau des âges moyens pour trois quartiers, comme indiqué ci-dessous:

Quartier des clients Âge moyen du client
centre-ville 19,5292
Eastside 54,4626
Westside 34,9534

Vous pouvez mapper le quartier du client à une région géographique spécifique pour le visualiser sur une carte. Pour ce faire, suivez les étapes décrites sur cette page.

Préparer les données régionales

Pour préparer les données régionales, vous avez besoin d'un fichier de données contenant les formes géographiques de chaque région, ainsi que des métadonnées qui associent la région aux données de la base de données.

Looker utilise un format appelé TopoJSON pour stocker ces données de manière compacte. Les fichiers TopoJSON peuvent être facilement créés à partir de nombreux formats de fichiers de formes courants, ou vous pouvez en dessiner un vous-même à l'aide d'outils en ligne, comme indiqué dans l'article de la communauté Convertir des fichiers de formes en TopoJSON.

Pour les besoins de cet exemple, il existerait déjà un fichier TopoJSON préparé et fournissant ce mappage. Chaque région du fichier TopoJSON possède une propriété appelée neighborhood qui correspond aux valeurs du champ Customer Neighborhood (Quartier du client), qui est définie dans le projet LookML en tant que dimension appelée neighborhood.

Importer des données régionales

Pour importer les données de région dans Looker, vous pouvez glisser-déposer le fichier TopoJSON dans la section Explorateur de fichiers du projet. Ces données seront validées avec le code LookML et mises à jour comme tout autre code d'un projet LookML.

Créer le calque de carte

Maintenant que vous disposez des données de région dans le projet, vous devez créer un calque de carte dans le modèle LookML.

Vous pouvez ajouter une définition dans le fichier de modèle à l'aide du paramètre map_layer:

map_layer: my_neighborhood_layer {
  file: "neighborhoods.topojson"
  property_key: "neighborhood"
}

Le paramètre file fait référence au nom du fichier du projet contenant les données de région, et property_key est la propriété de l'ensemble de données que vous souhaitez exposer dans Looker. Si vous n'êtes pas sûr de la clé de propriété, omettez simplement la clé de propriété, et Looker tentera de sélectionner la clé appropriée.

Conseil:Vous pouvez également utiliser un fichier TopoJSON hébergé ailleurs en ligne, en spécifiant url au lieu de file dans la définition de la couche :

map_layer: my_neighborhood_layer {
  url: "https://raw.githubusercontent.com/cooluser/JSON_Stuff/master/Neighborhoods.topoJSON"
  property_key: "neighborhood"
}

Associer le calque de carte aux données

Il ne vous reste plus qu'à associer la dimension neighborhood dans la vue au calque de carte que vous venez de créer en appliquant le paramètre map_layer_name.

dimension: neighborhood {
  sql: ${TABLE}.neighborhood ;;
  map_layer_name: my_neighborhood_layer
}
  

Cela indique à Looker que les valeurs de cette dimension sont associées à l'property_key exposé par le calque de carte. Cela permet également à Looker de savoir qu'il est possible d'afficher ces données sur une carte.

Afficher la carte

Les requêtes qui utilisent la dimension neighborhood peuvent désormais être affichées sur une carte depuis la page d'exploration: