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
Es un identificador para tu capa del mapa, además de subparámetros que definen las propiedades de la capa del mapa.
|
Definición
El parámetro map_layer te permite definir una capa de mapa personalizada que luego se puede usar para generar gráficos de datos regionales, como condados o códigos postales, en Looker y crear gráficos de mapa.
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 de regiones de 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 de prácticas recomendadas Cómo crear regiones de mapa personalizadas.
Looker recomienda que los archivos de capas de mapas personalizadas tengan un tamaño inferior a 5 MB para evitar sobrecargar la pestaña del navegador del usuario.
Capas del mapa integradas
Looker incluye varias capas de mapa integradas. Antes de crear tus propias capas del mapa, verifica si puedes usar una de las capas integradas:
Las capas integradas del mapa
countriesyus_statesusan mayúsculas correctamente para los nombres de países y estados. Los datos se representan en la capa del mapa de forma sensible a mayúsculas y minúsculas, por lo que tus datos también deben usar las mayúsculas adecuadas para usar estas capas integradas del mapa. Por ejemplo, si tu conjunto de datos usa "nueva delhi" en minúsculas, los datos no se trazarán correctamente en las capas de mapas integradas, que usan "Nueva Delhi".
countries: Acepta nombres de países completos, códigos de país de tres letras ISO 3166-1 alpha-3 o códigos de país de dos letras ISO 3166-1 alpha-2. Ten en cuenta que solo debes usar una de estas tres opciones en tu conjunto de datos. No puedes usar una combinación de ellas.Si tus datos usan ISO 3166-1 alpha-2, incluye el parámetro
map_layer_nameen 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 de forma incorrecta 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 completos de estados y abreviaturas de estados de dos letras.us_counties_fips: Funciona en campos de cadena que son códigos FIPS 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 del mapaus_zipcode_tabulation_areas.Las regiones de códigos postales se basan en las áreas de tabulación de códigos postales (ZCTA) del 2010, por lo que esta capa del mapa no incluye muchos códigos postales, como los que se asignan a los apartados postales, que no se asignan directamente a las regiones.
Cómo especificar una capa del mapa
La ubicación del mapa se puede especificar con el nombre de un archivo o una URL.
Cuando uses 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 parámetro secundario feature_key no se admite para 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 | 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, de la siguiente manera: "/countryobjects.json" Si tu proyecto no está habilitado para carpetas, Looker mostrará 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 código 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 del mapa. Estos datos se usan para centrar automáticamente el mapa en los datos disponibles con fines de visualización. El archivo JSON debe ser un objeto JSON en el que las claves sean el valor de asignación de la función (como se especifica en property_key) y los valores sean arrays de cuatro números que representen las extensiones de longitud oeste, latitud sur, longitud este y 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 | Nombre del objeto TopoJSON al que hace referencia la capa del 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 del mapa en las visualizaciones que admiten el zoom. |
min_zoom_level |
Número | Es el nivel de zoom mínimo para acercar la capa del mapa en las visualizaciones que admiten el zoom. |
projection |
Palabra clave | Es la proyección geográfica preferida de la capa del mapa cuando se muestra en una visualización que admite varias proyecciones geográficas. El editor de LookML enumera las muchas proyecciones disponibles cuando agregas un parámetro de proyección. |
property_key |
String | Propiedad de los datos de TopoJSON que se usará para generar el gráfico. 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 representar, especifícala aquí. |
property_label_key |
String | Es la propiedad de los datos de TopoJSON que se usará para etiquetar la región. Esto es útil cuando el valor de la asignación (definido por property_key) no es muy legible. |
url |
String | Ubicación del mapa, especificada por una URL que contiene el archivo del mapa. |
Ejemplos
Cuando sea posible, agrega tu archivo de mapa al proyecto y, luego, usa el parámetro file para que apunte al archivo de mapa.
Debes usar la ruta de acceso completa para el archivo JSON. Si tu proyecto no está habilitado para carpetas, Looker mostrará 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 del mapa (especificando un archivo o usando el parámetro url), puedes especificar que los valores de una dimensión se deben asociar con una región geográfica en tu mapa personalizado. En la dimensión, usa el parámetro map_layer_name para especificar el nombre que usaste en el parámetro map_layer.
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 genera un gráfico de 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)
Establecer Mapa en Automático en los gráficos de mapa estático (regiones) requiere que se especifique map_layer en el modelo de LookML que especifica una capa de mapa. Si no se establece ese parámetro, los usuarios recibirán un error si seleccionan Automático, pero podrán seguir usando 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 uses 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 habilitadas las carpetas del IDE para tu proyecto, debes usar la ruta de acceso cuando especifiques un archivo del proyecto para map_layer:
map_layer: neighborhoods {
file: "/maps/my_neighborhoods.json"
}