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
- 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.
-
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 theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enable
permission. Learn how to grant roles. -
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 theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enable
permission. Learn how to grant roles. -
Earth Engine Resource Viewer (
roles/earthengine.viewer
) -
Consumidor de utilização do serviço (
roles/serviceusage.serviceUsageConsumer
) -
Editor de dados do BigQuery (
roles/bigquery.dataEditor
) -
earthengine.computations.create
-
serviceusage.services.use
-
bigquery.datasets.create
Aceda à página Partilha (Centro de análise).
Clique em
Pesquisar fichas.No campo Pesquisar fichas, introduza
"ERA5-Land Daily Aggregated"
.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.
Clique em Subscrever.
Opcional: atualize o Projeto.
Atualize o nome do conjunto de dados associado para
era5_climate_tutorial
.Clique em Guardar. O conjunto de dados associado é adicionado ao seu projeto e contém uma tabela única denominada
climate
.No painel Resultados da consulta, clique no separador Visualização.
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.
Abra a ferramenta Web Geo Viz.
Em alternativa, no painel Resultados da consulta, clique em Abrir em > GeoViz.
No passo 1, Consulta, clique em Autorizar.
Na caixa de diálogo Escolher uma conta, clique na sua Conta Google.
Na caixa de diálogo de acesso, clique em Permitir para conceder ao Geo Viz acesso aos seus dados do BigQuery.
No passo um, Selecionar dados, introduza o ID do projeto no campo ID do projeto.
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;
Clique em Executar.
Para abrir o painel fillColor, clique no passo 3, Estilo.
Clique no botão Orientado por dados para o ativar.
Para Função, escolha linear.
Em Campo, escolha
mean_temperature
.Para Domínio, introduza
-20
na primeira caixa e32
na segunda caixa.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.Clique em fillOpacity.
No campo Valor, introduza
.5
.Clique em Aplicar estilo.
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.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
- Para saber como visualizar opções de estatísticas geoespaciais, consulte o artigo Visualizar dados geoespaciais.
- Para trabalhar com dados raster, consulte o artigo Trabalhe com dados raster.
- Para saber mais sobre as funções geográficas que pode usar na estatística geoespacial, consulte o artigo Funções geográficas no GoogleSQL.
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:
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:
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:
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:
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:
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: