Use dados rasterizados para analisar a temperatura

Este tutorial descreve como realizar uma análise geoespacial em dados rasterizados.

Objetivos

  • Encontre dados do Google Earth Engine disponíveis publicamente na partilha do BigQuery (anteriormente Analytics Hub).
  • Use a função ST_REGIONSTATS para calcular a temperatura média em cada país num determinado momento.
  • Visualize os resultados no BigQuery Geo Viz, que é uma ferramenta Web para visualização de dados geoespaciais no BigQuery através das APIs Google Maps.

Custos

Neste tutorial, vai usar os seguintes componentes faturáveis do Google Cloud:

Antes de começar

Recomendamos que crie um Google Cloud projeto para este tutorial. Certifique-se de que tem as funções necessárias para concluir este tutorial.

Configure um Google Cloud projeto

  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. Funções necessárias

    Para receber as autorizações de que precisa para realizar as tarefas neste tutorial, peça ao seu administrador que lhe conceda as seguintes funções da IAM no seu projeto:

    Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Estas funções predefinidas contêm as autorizações necessárias para realizar as tarefas neste tutorial. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:

    Autorizações necessárias

    São necessárias as seguintes autorizações para realizar as tarefas neste tutorial:

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

    Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.

    Subscreva um conjunto de dados

    Para encontrar o conjunto de dados usado neste tutorial, siga estes passos:

    1. Aceda à página Partilha (Centro de análise).

      Aceda à partilha (Analytics Hub)

    2. Clique em Pesquisar fichas.

    3. No campo Pesquisar fichas, introduza "ERA5-Land Daily Aggregated".

    4. Clique no resultado. É aberto um painel de detalhes com informações sobre o conjunto de dados de reanálise climática ERA5-Land, incluindo uma descrição, um link para informações de bandas, a disponibilidade, a dimensão dos píxeis e os termos de utilização.

    5. Clique em Subscrever.

    6. Opcional: atualize o Projeto.

    7. Atualize o nome do conjunto de dados associado para era5_climate_tutorial.

    8. Clique em Guardar. O conjunto de dados associado é adicionado ao seu projeto e contém uma tabela única denominada climate.

    Encontre o ID do raster

    Cada linha na tabela era5_climate_tutorial.climate contém metadados para uma imagem rasterizada que tem dados climáticos para um dia específico. Execute a seguinte consulta para extrair o ID da imagem raster da imagem raster de 1 de janeiro de 2025:

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

    O resultado é ee://ECMWF/ERA5_LAND/DAILY_AGGR/20250101. Na secção seguinte, vai usar este valor para o argumento raster_id da função ST_REGIONSTATS.

    Calcule a temperatura média

    Execute a seguinte consulta para calcular a temperatura média de cada país a 1 de janeiro de 2025 usando a função 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 é executada na tabela division_area disponível publicamente que contém valores GEOGRAPHY que representam os limites de várias regiões na Terra, incluindo países. A função ST_REGIONSTATS usa a temerature_2m faixa da imagem raster, que contém a temperatura do ar a 2 metros acima da superfície da terra no pixel indicado.

    Visualize os resultados da consulta no BigQuery

    Para visualizar os resultados no BigQuery, siga estes passos:

    1. No painel Resultados da consulta, clique no separador Visualização.

    2. Para Coluna de dados, selecione mean_temperature.

      É apresentado um mapa-mundo com um estilo de gradiente de cores para a temperatura média de cada país.

    Mapa de países com cores consoante a temperatura média

    Visualize os resultados da consulta no Geo Viz

    Também pode visualizar os resultados através do BigQuery Geo Viz.

    Inicie o Geo Viz e autentique

    Antes de usar o Geo Viz, tem de autenticar e conceder acesso aos dados no BigQuery.

    Para configurar a visualização geográfica, faça o seguinte:

    1. Abra a ferramenta Web Geo Viz.

      Abra o Geo Viz

      Em alternativa, no painel Resultados da consulta, clique em Abrir em > GeoViz.

    2. No passo 1, Consulta, clique em Autorizar.

    3. Na caixa de diálogo Escolher uma conta, clique na sua Conta Google.

    4. Na caixa de diálogo de acesso, clique em Permitir para conceder ao Geo Viz acesso aos seus dados do BigQuery.

    Execute a consulta no Geo Viz

    Depois de se autenticar e conceder acesso, o passo seguinte é executar a consulta no Geo Viz.

    Para executar a consulta, faça o seguinte:

    1. No passo um, Selecionar dados, introduza o ID do projeto no campo ID do projeto.

    2. Na janela de consulta, introduza a seguinte consulta GoogleSQL. Se abriu o Geo Viz a partir dos resultados da consulta, este campo já está preenchido com a sua 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. Clique em Executar.

    Aplique estilos

    A secção Estilo apresenta uma lista de estilos visuais para personalização. Para mais informações acerca de cada estilo, consulte Formate a visualização.

    Para formatar o mapa, faça o seguinte:

    1. Para abrir o painel fillColor, clique no passo 3, Estilo.

    2. Clique no botão Orientado por dados para o ativar.

    3. Para Função, escolha linear.

    4. Em Campo, escolha mean_temperature.

    5. Para Domínio, introduza -20 na primeira caixa e 32 na segunda caixa.

    6. Para Intervalo, clique na primeira caixa e introduza #0006ff na caixa Hex e, de seguida, clique na segunda caixa e introduza #ff0000. Isto altera a cor de cada país com base na respetiva temperatura média a 1 de janeiro de 2025. O azul indica uma temperatura mais fria e o vermelho indica uma temperatura mais quente.

    7. Clique em fillOpacity.

    8. No campo Valor, introduza .5.

    9. Clique em Aplicar estilo.

    10. Examine o seu mapa. Se clicar num país, são apresentados o nome do país, a temperatura média e a geometria simplificada.

      Mapa com países coloridos pela temperatura média.

    Limpar

    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.

    O que se segue?