Uso
map_layer: company_regions {
feature_key: "ISO_A3"
file: "/map_folder/regions.json"
format: topojson
label: "desired label for chart visualization"
max_zoom_level: 12
min_zoom_level: 2
projection: airy
property_key: "ISO_A3"
property_label_key: "NAME"
}
|
Jerarquía
map_layer |
Valor predeterminado
Ninguno
Acepta
Un identificador para tu capa de mapa, además de subparámetros que definen las propiedades de la capa de mapa.
|
Definición
El parámetro map_layer te permite definir una capa de mapa personalizada que luego se puede usar para trazar datos regionales, como condados o códigos postales, en Looker y crear gráficos de mapas.
Cuando existe una capa de mapa, por lo general, la visualización de mapa interactivo se elige como la visualización de mapa predeterminada. La única excepción es el mapa de los estados de EE.UU., en el que Looker usa el gráfico Región del mapa estático de forma predeterminada porque usa inserciones para Alaska y Hawái.
Las capas de mapa pueden aceptar archivos TopoJSON o GeoJSON.
Para obtener más información sobre cómo crear un archivo de capa de mapa personalizado, consulta la página Prácticas recomendadas para crear regiones de mapas personalizadas.
Looker recomienda que los archivos de capa de mapa personalizados tengan un tamaño inferior a 5 MB para evitar sobrecargar la pestaña del navegador del usuario.
Capas de mapa integradas
Looker incluye varias capas de mapa integradas. Antes de crear tus propias capas de mapa, verifica si puedes usar una de las capas de mapa integradas:
Las capas de mapa integradas
countriesyus_statesusan mayúsculas adecuadas para los nombres de países y estados. Los datos se trazan en la capa de mapa de forma sensible a mayúsculas y minúsculas, por lo que tus datos también deben usar mayúsculas adecuadas para usar estas capas de mapa integradas. Por ejemplo, si tu conjunto de datos usa "new delhi" en minúscula, los datos no se trazarán correctamente en las capas de mapa integradas, que usan "New Delhi".
countries— Acepta nombres de países completos, ISO 3166-1 alfa-3 códigos de país de tres letras o ISO 3166-1 alfa-2 códigos de país de dos letras. Ten en cuenta que debes usar solo una de estas tres opciones en tu conjunto de datos. No puedes usar una combinación de estas opciones.Si tus datos usan ISO 3166-1 alfa-2, incluye el
map_layer_nameparámetro en la definición de tu dimensión de país para asegurarte de que Looker reconozca tus datos como códigos de país y no los interprete incorrectamente como códigos de estado. Por ejemplo:
dimension: country {
type: string
map_layer_name: countries
sql: ${TABLE}.country ;;
}
uk_postcode_areas— Acepta áreas de códigos postales del Reino Unido (por ejemplo,Lpara Liverpool,RHpara Redhill oEHpara Edimburgo).us_states: Acepta nombres de estados completos y abreviaturas de estados de dos letras.us_counties_fips: Funciona en campos de cadena que son códigos FIPS de condado de cinco caracteres para un condado de EE.UU. Esta capa solo funciona en el mapa interactivo.us_zipcode_tabulation_areas: Funciona en campos de cadena que son códigos postales de EE.UU. de cinco caracteres. Las dimensiones detype: zipcodeusan automáticamente la capa de mapaus_zipcode_tabulation_areas.Las regiones de códigos postales se basan en las áreas de tabulación de códigos postales (ZCTA) de 2010, por lo que esta capa de mapa no incluye muchos códigos postales, como los asignados a casillas de correo, que no se asignan directamente a las regiones.
Cómo especificar una capa de mapa
La ubicación del mapa se puede especificar con el nombre de un archivo o una URL.
Cuando usas un archivo GeoJSON, debes usar el subparámetro file o url. También puedes usar property_key y property_label_key de forma opcional. El subparámetro feature_key no es compatible con los archivos GeoJSON. La sintaxis general para agregar una capa de mapa GeoJSON es la siguiente:
map_layer: identifier {
file: "/file_path/file_name.geojson" # or use the url subparameter
url: "string" # or use the file subparameter
property_key: "string"
property_label_key: "string"
}
La sintaxis general para agregar una capa de mapa TopoJSON es la siguiente:
map_layer: identifier {
extents_json_url: "string"
feature_key: "string"
file: "/file_path/file_name.json" # or use the url subparameter
format: topojson | vector_tile_region
label: "string"
max_zoom_level: number
min_zoom_level: number
projection: airy # or one of many other choices
property_key: "string"
property_label_key: "string"
url: "string" # or use the file subparameter
}
Aquí:
| Parámetro | Tipo | Descripción |
|---|---|---|
identifier |
String | Es el nombre del mapa al que harás referencia en LookML. |
file |
String | Es la ubicación del mapa, especificada por el nombre de un archivo JSON de tu proyecto de LookML. El archivo debe estar en formato TopoJSON o GeoJSON y usar una de las siguientes extensiones: .json, .geojson o .topojson. Debes usar la ruta de acceso completa para el archivo JSON, como "/maps/countryobjects.json" para un archivo en el directorio /maps/. Si el archivo JSON está en el directorio raíz y no en una carpeta, puedes indicar el directorio raíz con una sola barra diagonal, de la siguiente manera: "/countryobjects.json" Si tu proyecto no está habilitado para carpetas, Looker muestra los archivos JSON en la sección Datos de la lista de archivos del IDE de LookML. Consulta la sección Ejemplos más adelante en esta página para ver el LookML de cada una de estas situaciones. |
extents_json_url |
String | Es la URL de un archivo JSON que define las extensiones geográficas de cada región disponible en la capa de mapa. Estos datos se usan para centrar automáticamente el mapa en los datos disponibles para fines de visualización. El archivo JSON debe ser un objeto JSON en el que las claves sean el valor de asignación del atributo (como se especifica en property_key) y los valores sean arrays de cuatro números que representen la longitud oeste, la latitud sur, la longitud este y la latitud norte de la región. El objeto debe incluir una clave para cada valor posible de property_key. Por ejemplo, extents_json_url: "https://mycompany.com/mapserver/json-extent.js". Si usas este parámetro, debes especificar la ubicación del mapa con el parámetro url. |
feature_key |
String | Es el nombre del objeto TopoJSON al que hace referencia la capa de mapa. Si no se especifica, se usará el primer objeto. |
format |
Palabra clave topojson o vector_tile_region |
Es el formato de datos de la información de la región. Por lo general, las personas usan topojson. |
label |
String | Se muestra en la IU de configuración del gráfico. |
max_zoom_level |
Número | Es el nivel de zoom máximo para acercar la capa de mapa, para visualizaciones que admiten el zoom. |
min_zoom_level |
Número | Es el nivel de zoom mínimo para acercar la capa de mapa, para visualizaciones que admiten el zoom. |
projection |
Palabra clave | Es la proyección geográfica preferida de la capa de mapa cuando se muestra en una visualización que admite varias proyecciones geográficas. El editor de LookML muestra las muchas proyecciones disponibles cuando agregas un parámetro de proyección. |
property_key |
String | Es la propiedad de los datos TopoJSON para trazar. TopoJSON admite metadatos arbitrarios para cada región. De forma predeterminada, se usa la primera propiedad coincidente. Si hay una propiedad de metadatos en particular que deseas trazar, especifícala aquí. |
property_label_key |
String | Es la propiedad de los datos TopoJSON que se usará para etiquetar la región. Esto es útil cuando el valor de asignación (definido por property_key) no es muy legible. |
url |
String | Es la ubicación del mapa, especificada por una URL que contiene tu archivo de mapa. |
Ejemplos
Cuando sea posible, agrega tu archivo de mapa a tu proyecto y, luego, usa el parámetro file para apuntar al archivo de mapa.
Debes usar la ruta de acceso completa para el archivo JSON. Si tu proyecto no está habilitado para carpetas, Looker muestra los archivos JSON en la sección Datos de la lista de archivos del IDE de LookML.
Por ejemplo, si tu proyecto está habilitado para carpetas y tienes un mapa personalizado de vecindarios llamado my_neighborhoods.json en un directorio llamado maps, usarías la ruta de acceso completa de la siguiente manera:
map_layer: neighborhoods {
file: "/maps/my_neighborhoods.json"
}
Si tu proyecto no usa carpetas, los archivos de mapa subidos se muestran en la sección Datos del proyecto. En este caso, solo puedes proporcionar el nombre del archivo my_neighborhoods.json:
map_layer: neighborhoods {
file: "my_neighborhoods.json"
}
Como alternativa, puedes especificar que un mapa neighborhoods personalizado se aloje en otro lugar, como en https://wherever.com/my_neighborhoods.json:
map_layer: neighborhoods {
url: "https://wherever.com/my_neighborhoods.json"
}
Después de definir la capa de mapa (especificando un archivo o usando el parámetro url), puedes especificar que los valores de una dimensión deben asociarse con una región geográfica en tu mapa personalizado. En la dimensión, usa el map_layer_name parámetro para especificar el nombre que usaste en el map_layer parámetro.
dimension: neighborhood {
type: string
map_layer_name: neighborhoods # this is your map layer
sql: ${TABLE}.neighborhood_code
}
Cuando consultas esta dimensión y abres la sección de visualización, Looker traza los datos con el archivo JSON neighborhoods, como se define en el parámetro map_layer de tu archivo de modelo.
Información importante
Gráficos de mapas estáticos (regiones)
Configurar Mapa como Automático en los gráficos de mapas estáticos (regiones) depende de que se especifique map_layer en el modelo de LookML que especifica una capa de mapa. Sin ese parámetro establecido, los usuarios reciben un error si seleccionan Automático, pero pueden usar los mapas integrados de Looker.
Archivos GeoJSON
Al igual que los archivos TopoJSON, los archivos GeoJSON pueden usar la extensión de nombre de archivo .geojson o .json, pero deben contener datos geográficos en formato GeoJSON. Cuando usas un archivo GeoJSON, debes usar el subparámetro file o url, y puedes usar property_key y property_label_key de forma opcional.
Usa map_layer con carpetas del IDE
Si tienes carpetas del IDE habilitadas para tu proyecto, debes usar la ruta de acceso cuando especifiques un archivo de proyecto para map_layer:
map_layer: neighborhoods {
file: "/maps/my_neighborhoods.json"
}