Usa estadísticas geoespaciales para trazar la ruta de un huracán


En este instructivo, se presentan estadísticas geoespaciales. Las estadísticas geoespaciales te permiten analizar y visualizar datos geoespaciales en BigQuery de forma sencilla.

Objetivos

En este instructivo, harás lo siguiente:

  • Usar una función de estadísticas geoespaciales para convertir columnas de latitud y longitud en puntos geográficos
  • Ejecutar una consulta que trace la ruta de un huracán
  • Visualizar tus resultados en BigQuery Geo Viz.

Costos

BigQuery es un producto pago que generará costos de uso en este instructivo. BigQuery ofrece algunos recursos de forma gratuita hasta alcanzar un límite específico. Para obtener más información, consulta Operaciones gratuitas de BigQuery y nivel gratuito.

Antes de comenzar

Antes de comenzar con este instructivo, usa la consola de Google Cloud para crear o seleccionar un proyecto.

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  4. BigQuery se habilita automáticamente en proyectos nuevos. Para activar BigQuery en un proyecto existente, ve a

    Enable the BigQuery API.

    Enable the API

  5. Opcional: Habilita la facturación para el proyecto. Si no deseas habilitar la facturación ni proporcionar una tarjeta de crédito, los pasos que se indican en este documento seguirán funcionando. BigQuery proporciona una zona de pruebas para realizar los pasos. Para obtener más información, consulta Habilita la zona de pruebas de BigQuery.

Explora los datos de muestra

Este instructivo utiliza un conjunto de datos disponible a través del Programa de conjuntos de datos públicos de Google Cloud. Un conjunto de datos públicos es un conjunto de datos que se almacena en BigQuery y está disponible para el público en general. Se trata de conjuntos de datos que BigQuery aloja de modo que puedas acceder a ellos y también integrarlos en tus aplicaciones. Google paga por el almacenamiento de estos conjuntos de datos y proporciona acceso público a los datos a través de un proyecto. Solo se paga por las consultas que realices en los datos (el primer 1 TB mensual es gratuito, sujeto a los detalles de los precios de las consultas).

Conjunto de datos sobre los recorridos de huracanes globales (IBTrACS)

Conjunto de datos sobre los recorridos de huracanes globales (IBTrACS)

El archivo International Best Track Archive for Climate Stewardship (IBTrACS) de NOAA proporciona las posiciones históricas y las intensidades de los ciclones tropicales (TC) globales a lo largo de sus recorridos. Los ciclones tropicales se conocen como huracanes en las cuencas oceánicas del Atlántico Norte y del Pacífico Nororiental, tifones en la cuenca oceánica del Pacífico Noroccidental, ciclones en las cuencas oceánicas del Índico Norte y Sur, y ciclones tropicales en la cuenca oceánica del Pacífico Sudoccidental.

El IBTrACS recopila los datos sobre los TC registrados por las centrales de supervisión internacionales, que tienen la responsabilidad de pronosticar y de informar sobre los TC, y, además, incluye algunos conjuntos de datos históricos importantes. El IBTrACS incluye datos provenientes de 9 países distintos. A lo largo de su historia, los datos que describen estos sistemas incluyeron estimaciones de su recorrido y su intensidad (de ahí proviene el término en inglés “best track”, mejor recorrido).

Puedes comenzar a explorar estos datos en la consola de Google Cloud si consultas los detalles de la tabla hurricanes:

Ir al esquema de huracanes

Consulta la ruta del huracán María en 2017

En esta sección del instructivo, ejecutas una consulta en GoogleSQL que encuentra la ruta del huracán María en la temporada de 2017. Para trazar la ruta del huracán, consultas su ubicación en diferentes momentos precisos.

Detalles de la consulta

Se usa la siguiente consulta en GoogleSQL para encontrar la ruta del huracán María.

SELECT
  ST_GeogPoint(longitude, latitude) AS point,
  name,
  iso_time,
  dist2land,
  usa_wind,
  usa_pressure,
  usa_sshs,
  (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt,
  (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt
FROM
  `bigquery-public-data.noaa_hurricanes.hurricanes`
WHERE
  name LIKE '%MARIA%'
  AND season = '2017'
  AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'),
    ST_GeogPoint(longitude, latitude), 10)
ORDER BY
  iso_time ASC

Las cláusulas de la consulta hacen lo siguiente:

  • SELECT ST_GeogPoint(longitude, latitude) AS point, name, iso_time, dist2land, usa_wind, usa_pressure, usa_sshs, (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt, (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt
    La cláusula SELECT selecciona todos los datos climáticos de la tormenta y usa la función ST_GeogPoint para convertir los valores de las columnas latitude y longitude a los tipos GEOGRAPHY (puntos).
  • FROM bigquery-public-data.noaa_hurricanes.hurricanes
    La cláusula FROM especifica la tabla que se está consultando: hurricanes.
  • WHERE name LIKE '%MARIA%' AND season = '2017' AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'), ST_GeogPoint(longitude, latitude), 10)
    La cláusula WHERE filtra los datos para incluir solo los puntos en el Atlántico que correspondan al huracán María en la temporada de huracanes de 2017.
  • ORDER BY iso_time ASC
    La cláusula ORDER BY ordena los puntos para que formen una ruta de la tormenta cronológica.

Ejecuta la consulta

Para ejecutar la consulta con la consola de Google Cloud, sigue estos pasos:

  1. Ve a la página de BigQuery en la consola de Google Cloud.

    Ir a la página de BigQuery

  2. Ingresa la siguiente consulta de GoogleSQL en el área de texto del Editor de consultas.

    SELECT
      ST_GeogPoint(longitude, latitude) AS point,
      name,
      iso_time,
      dist2land,
      usa_wind,
      usa_pressure,
      usa_sshs,
      (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt,
      (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt
    FROM
      `bigquery-public-data.noaa_hurricanes.hurricanes`
    WHERE
      name LIKE '%MARIA%'
      AND season = '2017'
      AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'),
        ST_GeogPoint(longitude, latitude), 10)
    ORDER BY
      iso_time ASC
    
  3. Haga clic en Ejecutar.

    La consulta tarda un momento en completarse. Una vez que se ejecuta la consulta, tus resultados aparecerán en el panel Resultados de la consulta.

    Resultados de la consulta del huracán María en BigQuery

Visualiza los resultados de la consulta en Geo Viz

A continuación, visualizas los resultados con BigQuery Geo Viz, una herramienta web que permite visualizar datos geoespaciales en BigQuery mediante las API de Google Maps.

Inicia Geo Viz y autentícate

Antes de usar Geo Viz, debes autenticarte y otorgar acceso a los datos en BigQuery.

Para configurar Geo Viz, haz lo siguiente:

  1. Abre la herramienta web Geo Viz.

    Abrir la herramienta web Geo Viz

  2. En el primer paso, Seleccionar datos (Select data), haz clic en Autorizar (Authorize).

    Botón de autorización de Geo Viz

  3. En el diálogo Choose an account (Elegir una cuenta), haz clic en tu cuenta de Google.

    Cuadro de diálogo Elegir una cuenta

  4. En el diálogo de acceso, haz clic en Permitir (Allow) para que Geo Viz pueda tener acceso a tus datos de BigQuery.

    Permite el acceso al cuadro de diálogo Geo Viz

Ejecuta tu consulta en Geo Viz

Después de autenticarte y otorgar acceso, el próximo paso es ejecutar la consulta en Geo Viz.

Para ejecutar la consulta, haz lo siguiente:

  1. En el primer paso, Select data (Seleccionar datos), ingresa el ID de tu proyecto en el campo Project ID (ID del proyecto).

  2. En la ventana de la consulta, ingresa la siguiente consulta de GoogleSQL.

    SELECT
      ST_GeogPoint(longitude, latitude) AS point,
      name,
      iso_time,
      dist2land,
      usa_wind,
      usa_pressure,
      usa_sshs,
      (usa_r34_ne + usa_r34_nw + usa_r34_se + usa_r34_sw)/4 AS radius_34kt,
      (usa_r50_ne + usa_r50_nw + usa_r50_se + usa_r50_sw)/4 AS radius_50kt
    FROM
      `bigquery-public-data.noaa_hurricanes.hurricanes`
    WHERE
      name LIKE '%MARIA%'
      AND season = '2017'
      AND ST_DWithin(ST_GeogFromText('POLYGON((-179 26, -179 48, -10 48, -10 26, -100 -10.1, -179 26))'),
        ST_GeogPoint(longitude, latitude), 10)
    ORDER BY
      iso_time ASC
    
  3. Haz clic en Ejecutar.

  4. Una vez completada la consulta, haz clic en Show results. También puedes hacer clic en Datos del paso dos.

  5. Esto te hace avanzar al paso dos. Aquí, para Geometry column (Columna de geometría), elige point (punto). Esto traza los puntos correspondientes a la ruta del huracán María.

    Resultados asignados en BigQuery Geo Viz

Formatea tu visualización en Geo Viz

En la sección Estilo, se proporciona una lista de estilos visuales para personalizar la visualización. Algunas propiedades se aplican solo a algunos tipos de datos. Por ejemplo, circleRadius solo afecta a los puntos.

Las propiedades de estilo admitidas incluyen las siguientes opciones:

  • fillColor: El color de relleno de un polígono o un punto. Por ejemplo, las funciones "linear" o "interval" pueden usarse para mapear valores numéricos a un gradiente de color.
  • fillOpacity: la opacidad del relleno de un polígono o un punto. Los valores deben encontrarse en el rango entre cero y uno, en el que 0 = transparente y 1 = opaco.
  • strokeColor: el color del trazo o contorno de un polígono o una línea.
  • strokeOpacity: La opacidad del trazo o el contorno de un polígono o una línea. Los valores deben encontrarse en el rango entre cero y uno, en el que 0 = transparente y 1 = opaco.
  • strokeWeight: el ancho del trazo o contorno en píxeles de un polígono o línea.
  • circleRadius: el radio del círculo que representa un punto en metros. Por ejemplo, una función "lineal" puede usarse a fin de asignar valores numéricos de modo que se indiquen los tamaños para crear un estilo de diagrama de dispersión.

Cada estilo puede recibir un valor global (que se aplique a todos los resultados) o uno basado en los datos (que se aplique de maneras distintas según los datos en cada fila de resultados). En el caso de los valores basados en los datos, se utilizan las siguientes opciones para determinar el resultado:

  • function (función): Una función que se usa para procesar un valor de estilo a partir de los valores de un campo.
  • identidad (identity): se usa el valor de los datos de cada campo como el valor de estilo.
  • categórico (categorical): se asignan uno a uno los valores de los datos de cada campo enumerado en el dominio hacia los estilos correspondientes en el rango.
  • intervalo (interval): los valores de los datos de cada campo se redondean hacia abajo hasta el valor más cercano en el dominio y, luego, se les da el estilo correspondiente en el rango.
  • lineal (linear): los valores de los datos de cada campo se interpolan de forma lineal con los valores del dominio y se les da estilo según una combinación de los estilos correspondientes en el rango.
  • campo (field): se usa el campo especificado en los datos como los datos de entrada para la función de estilo.
  • dominio (domain): una lista ordenada de datos de entrada de muestra provenientes de un campo. Los datos de entrada (dominio) de muestra se asocian con los datos de salida (rango) de muestra basados en la función determinada y se usan con el fin de inferir valores de estilo para todos los datos de entrada (incluso aquellos que no estén enumerados en el dominio). Los valores en el dominio deben tener el mismo tipo (texto, número, etc.) que los valores del campo que estás visualizando.
  • rango (range): una lista de valores de datos de salida de muestra para la regla de estilo. Los valores en el rango deben tener el mismo tipo (color o número) que la propiedad de estilo que estás controlando. Por ejemplo, el rango de la propiedad fillColor debería tener solo colores.

Para formatear tu mapa, haz lo siguiente:

  1. Haz clic en Add styles (Agregar estilos) en el paso dos o haz clic en el paso tres, Style (Estilo).

  2. Cambia el color de tus puntos. Haz clic en fillColor.

  3. En el panel de fillColor, haz lo siguiente:

    1. Haz clic en Data driven (Basado en los datos).
    2. En Función (Function), elige lineal (linear).
    3. En Campo(Field), selecciona usa_wind.
    4. En Dominio, ingresa 0 en el primer cuadro y 150 en el segundo.
    5. Para Rango (Range), haz clic en el primer cuadro y, luego, ingresa #0006ff en el cuadro Hexadecimal. Haz clic en el segundo cuadro y, luego, ingresa #ff0000. Esto cambia el color del punto según la velocidad del viento. Se usa el azul para vientos más suaves y el rojo para vientos más fuertes.

      Agrega color de relleno en BigQuery Geo Viz

  4. Examina tu mapa. Si mantienes el puntero sobre uno de tus puntos, se muestran sus datos meteorológicos.

    Detalles del punto del mapa

  5. Haz clic en fillOpacity.

  6. En el campo Valor, ingresa .5.

    Da formato a la opacidad de relleno del mapa en BigQuery Geo Viz

  7. Examina tu mapa. El color de relleno de los puntos ahora es semitransparente.

  8. Cambia el tamaño de los puntos según el radio del huracán. Haz clic en circleRadius.

  9. En el panel circleRadius, haz lo siguiente:

    1. Haz clic en Data driven (Basado en los datos).
    2. En Función (Function), elige lineal (linear).
    3. En Campo(Field), selecciona radius_50kt.
    4. En Dominio (Domain), ingresa 0 en el primer cuadro y 135 en el segundo.
    5. En Rango, ingresa 5 en el primer cuadro y 135000 en el segundo.

      Agrega un radio de círculo en BigQuery Geo Viz

  10. Examina tu mapa. El radio de cada punto ahora corresponde al radio del huracán.

    Mapa final de BigQuery Geo Viz

  11. Cierra Geo Viz.

Limpia

Para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos usados en este instructivo, borra el proyecto que contiene los recursos o conserva el proyecto y borra los recursos individuales.

  • Puedes borrar el proyecto que creaste.
  • O puedes conservar el proyecto y usarlo a futuro.

Para borrar el proyecto, haz lo siguiente:

  1. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

¿Qué sigue?