Usar datos ráster para analizar la temperatura

En este tutorial se describe cómo realizar análisis geoespaciales en datos ráster.

Objetivos

  • Encuentra datos de Google Earth Engine disponibles públicamente en la función de compartir de BigQuery (antes Analytics Hub).
  • Usa la función ST_REGIONSTATS para calcular la temperatura media de cada país en un momento determinado.
  • Visualiza los resultados en BigQuery Geo Viz, una herramienta web para visualizar datos geoespaciales en BigQuery mediante las APIs de Google Maps.

Costes

En este tutorial, usarás los siguientes componentes facturables de Google Cloud:

Antes de empezar

Te recomendamos que crees un proyecto de Google Cloud para este tutorial. Asegúrate de que tienes los roles necesarios para completar este tutorial.

Configurar un Google Cloud 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.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery, BigQuery sharing, and Google Earth Engine APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

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

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery, BigQuery sharing, and Google Earth Engine APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  8. Roles obligatorios

    Para obtener los permisos que necesitas para realizar las tareas de este tutorial, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en tu proyecto:

    Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

    Estos roles predefinidos contienen los permisos necesarios para realizar las tareas de este tutorial. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

    Permisos obligatorios

    Para realizar las tareas de este tutorial, se necesitan los siguientes permisos:

    • earthengine.computations.create
    • serviceusage.services.use
    • bigquery.datasets.create

    También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.

    Suscribirse a un conjunto de datos

    Para encontrar el conjunto de datos que se usa en este tutorial, sigue estos pasos:

    1. Vaya a la página Compartir (Analytics Hub).

      Ir a Compartir (Analytics Hub)

    2. Haz clic en Buscar fichas.

    3. En el campo Buscar fichas, introduce "ERA5-Land Daily Aggregated".

    4. Haz clic en el resultado. Se abre un panel de detalles con información sobre el conjunto de datos de reanálisis climático ERA5-Land, como una descripción, un enlace a la información de las bandas, la disponibilidad, el tamaño de los píxeles y los términos de uso.

    5. Haz clic en Suscribirme.

    6. Opcional: Actualiza el proyecto.

    7. Cambia el Nombre del conjunto de datos vinculado a era5_climate_tutorial.

    8. Haz clic en Guardar. El conjunto de datos vinculado se añade a tu proyecto y contiene una sola tabla llamada climate.

    Buscar el ID de ráster

    Cada fila de la tabla era5_climate_tutorial.climate contiene metadatos de una imagen rasterizada que tiene datos climáticos de un día concreto. Ejecuta la siguiente consulta para extraer el ID de ráster de la imagen ráster del 1 de enero del 2025:

    SELECT
      assets.image.href
    FROM
      `era5_climate_tutorial.climate`
    WHERE
      properties.start_datetime = '2025-01-01';
    

    El resultado es ee://ECMWF/ERA5_LAND/DAILY_AGGR/20250101. En la siguiente sección, lo usarás como argumento raster_id de la función ST_REGIONSTATS.

    Calcular la temperatura media

    Ejecuta la siguiente consulta para calcular la temperatura media de cada país el 1 de enero del 2025 con la función ST_REGIONSTATS:

    WITH SimplifiedCountries AS (
      SELECT
        ST_SIMPLIFY(geometry, 10000) AS simplified_geometry,
        names.primary AS name
      FROM
        `bigquery-public-data.overture_maps.division_area`
      WHERE
        subtype = 'country'
    )
    SELECT
      sc.simplified_geometry AS geometry,
      sc.name,
      ST_REGIONSTATS(
        sc.simplified_geometry,
        'ee://ECMWF/ERA5_LAND/DAILY_AGGR/20250101',
        'temperature_2m'
      ).mean - 273.15 AS mean_temperature
    FROM
      SimplifiedCountries AS sc
    ORDER BY
      mean_temperature DESC;
    

    Esta consulta se ejecuta en la tabla division_area, que está disponible públicamente y contiene valores GEOGRAPHY que representan los límites de varias regiones de la Tierra, incluidos los países. La función ST_REGIONSTATS usa la temerature_2m banda de la imagen ráster, que contiene la temperatura del aire a 2 metros por encima de la superficie terrestre en el píxel correspondiente.

    Visualizar los resultados de la consulta en BigQuery

    Para visualizar los resultados en BigQuery, sigue estos pasos:

    1. En el panel Resultados de la consulta, haz clic en la pestaña Visualización.

    2. En Columna de datos, seleccione mean_temperature.

      Aparece un mapa del mundo con un degradado de colores que representa la temperatura media de cada país.

    Mapa de países coloreados según la temperatura media

    Visualizar los resultados de la consulta en Geo Viz

    También puedes visualizar los resultados con BigQuery Geo Viz.

    Abre Geo Viz y autentícate

    Antes de usar Geo Viz, debe autenticarse y dar acceso a los datos en BigQuery.

    Para configurar Geo Viz, sigue estos pasos:

    1. Abre la herramienta web Geo Viz.

      Abrir Geo Viz

      También puedes hacer clic en Abrir en > GeoViz en el panel Resultados de la consulta.

    2. En el paso 1, Consulta, haz clic en Autorizar.

    3. En el cuadro de diálogo Elige una cuenta, haz clic en tu cuenta de Google.

    4. En el cuadro de diálogo de acceso, haz clic en Permitir para dar acceso a Geo Viz a tus datos de BigQuery.

    Ejecutar la consulta en Geo Viz

    Después de autenticarte y conceder acceso, el siguiente paso es ejecutar la consulta en Geo Viz.

    Para ejecutar la consulta, sigue estos pasos:

    1. En el paso 1, Seleccionar datos, introduce el ID de tu proyecto en el campo ID del proyecto.

    2. En la ventana de consulta, introduce la siguiente consulta de GoogleSQL. Si has abierto Geo Viz desde los resultados de tu consulta, este campo ya se habrá rellenado con tu consulta.

      WITH SimplifiedCountries AS (
        SELECT
          ST_SIMPLIFY(geometry, 10000) AS simplified_geometry,
          names.primary AS name
        FROM
          `bigquery-public-data.overture_maps.division_area`
        WHERE
          subtype = 'country'
      )
      SELECT
        sc.simplified_geometry AS geometry,
        sc.name,
        ST_REGIONSTATS(
          sc.simplified_geometry,
          'ee://ECMWF/ERA5_LAND/DAILY_AGGR/20250101',
          'temperature_2m'
        ).mean - 273.15 AS mean_temperature
      FROM
        SimplifiedCountries AS sc
      ORDER BY
        mean_temperature DESC;
      
    3. Haz clic en Ejecutar.

    Aplicar estilos

    La sección Estilo ofrece una lista de estilos visuales que se pueden personalizar. Para obtener más información sobre cada estilo, consulta Dar formato a una visualización.

    Para dar formato a un mapa, sigue estos pasos:

    1. Para abrir el panel fillColor, haz clic en el paso 3, Estilo.

    2. Activa el interruptor Basado en datos.

    3. En Función, elige lineal.

    4. En Campo, elige mean_temperature.

    5. En Dominio, introduce -20 en el primer cuadro y 32 en el segundo.

    6. En Intervalo, haz clic en el primer cuadro e introduce #0006ff en el cuadro Hex (Hexadecimal). A continuación, haz clic en el segundo cuadro e introduce #ff0000. De esta forma, se cambia el color de cada país en función de su temperatura media el 1 de enero del 2025. El azul indica una temperatura más fría y el rojo, una temperatura más cálida.

    7. Haz clic en fillOpacity.

    8. En el campo Valor, introduce .5.

    9. Haga clic en Aplicar estilo.

    10. Examina tu mapa. Si haces clic en un país, se mostrarán su nombre, su temperatura media y su geometría simplificada.

      Mapa con países coloreados según la temperatura media.

    Limpieza

    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.

    Siguientes pasos