Análise de Série Temporal
Max Anjos
April 08, 2026
Source:vignettes/local_func_time_series.Rmd
local_func_time_series.RmdPrimeiros Passos
A função lcz_ts() permite analisar dados de temperatura
do ar associados a Zonas Climáticas Locais (LCZ) ao longo do tempo.
Neste tutorial, realizaremos uma análise de frequência horária da
temperatura do ar em Berlim para os anos de 2019-2020 usando o
lcz_data do pacote LCZ4r.
library(LCZ4r)
# Get the LCZ map for your city
lcz_map <- lcz_get_map_euro(city = "Berlin")
# Load sample data from LCZ4r
data("lcz_data")Análise Básica de Séries Temporais
Vamos começar com uma análise básica usando lcz_ts()
para observar as flutuações horárias de temperatura.
# Get monthly LCZ-air temperature time series
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "month",
ylab = "Air temperature [°C]",
xlab = "Date",
title = "LCZ - Time Series",
caption = "Source: LCZ4r, 2024.")
Série temporal mensal de temperatura do ar por LCZ para Berlim mostrando variações sazonais de temperatura entre diferentes classes LCZ
Opções de Visualização com plot_type
O argumento plot_type na função lcz_ts()
oferece várias visualizações:
- “basic_line”: Gráfico de linhas simples
- “faceted_line”: Gráfico de linhas com facetas por LCZ ou estação
- “heatmap”: Mapa de calor para visualizar padrões temporais
- **“warming_stripes”“: Listras representando variações de temperatura ao longo do tempo
Abaixo estão exemplos usando cada tipo de visualização.
1. Gráfico de Linhas Básico
# Daily air temperature for September 2019
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "day",
year = 2019, month = 9,
plot_type = "basic_line")
Gráfico de linhas básico mostrando variações diárias de temperatura em Berlim durante setembro de 2019
2. Gráfico de Linhas com Facetas por Estação
# Daily air temperature from January to March 2019, faceted by station
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2019, month = 1:3,
plot_type = "facet_line",
facet = "station")
Gráfico de linhas com facetas mostrando padrões de temperatura em diferentes estações meteorológicas em Berlim (janeiro-março de 2019)
3. Mapa de Calor da Temperatura ao Longo do Tempo
# Hourly air temperature on January 15, 2020, with LCZ facets
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2020, month = 1, day = 15,
plot_type = "heatmap",
facet = "LCZ")
Mapa de calor mostrando variações horárias de temperatura entre diferentes classes LCZ em 15 de janeiro de 2020
4. Listras de Aquecimento (Warming Stripes)
# Hourly air temperature for 2020, visualized as warming stripes
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2020, month = 1:12,
plot_type = "warming_stripes",
facet = "LCZ")
Visualização de listras de aquecimento mostrando tendências de temperatura entre diferentes classes LCZ ao longo de 2020
Dividindo Dados com o Argumento “by”
Você pode dividir os dados por categorias temporais ou espaciais como “year”, “month”, “season”, “weekday”, “weekend”, “yearseason”, entre outras.
# Daily air temperature by seasons of 2020
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "day",
year = 2020,
plot_type = "basic_line",
by = "season")
Variações de temperatura entre diferentes estações em Berlim durante 2020
Dividindo Períodos Noturnos e Diurnos com o Argumento “by”
Você também pode dividir os dados por períodos noturnos e diurnos com
by = "daylight".
# Diurnal cycle of air temperature on January 15, 2020
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2020, month = 1, day = 15,
plot_type = "heatmap",
by = "daylight")
Comparação de padrões de temperatura diurnos e noturnos em 15 de janeiro de 2020
Combinando Diurno com Meses
# Diurnal cycle of air temperature on January 15 and July 15, 2020
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2020, month = c(1, 7), day = 15,
plot_type = "basic_line",
by = c("daylight", "monthyear"))
Comparação de ciclos diurnos de temperatura no inverno (janeiro) e verão (julho) de 2020
Suavização de Tendências de Temperatura
Habilite a suavização definindo smooth = TRUE, que
adiciona uma linha de modelo aditivo generalizado (GAM) para mostrar a
tendência de temperatura.
# Trends of daily air temperature for 2019-2020 by station
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2019:2020,
plot_type = "basic_line",
smooth = TRUE)
Tendências de temperatura com suavização GAM entre estações para 2019-2020
Salvar Gráficos
Para salvar um gráfico e um dataframe, defina
isave = TRUE e especifique o tipo de arquivo com
save_extension (por exemplo, “png”, “jpeg”, “svg”, “pdf”).
Uma pasta LCZ4r_output é criada no seu PC.
# Save daylight plot and dataframe to PC
lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2020, month = 1, day = 15,
plot_type = "basic_line",
by = "daylight",
isave = TRUE)Dica: Os arquivos salvos serão automaticamente
organizados na pasta LCZ4r_output com nomes de arquivo
timestampados para fácil referência.
Retornar um Dataframe como Resultado
Para salvar o resultado no R, defina iplot = FALSE e
crie um objeto.
# Return daylight dataframe for January 15, 2020
my_output <- lcz_ts(lcz_map,
data_frame = lcz_data,
var = "airT",
station_id = "station",
time.freq = "hour",
year = 2020, month = 1, day = 15,
plot_type = "basic_line",
by = "daylight",
iplot = FALSE)
# View the structure of the returned dataframe
str(my_output)Resumo dos Parâmetros
Aqui está uma referência rápida para os principais parâmetros usados
em lcz_ts():
| Parâmetro | Descrição | Opções |
|---|---|---|
time.freq |
Frequência de agregação temporal | “hour”, “day”, “month”, “year” |
plot_type |
Tipo de visualização | “basic_line”, “facet_line”, “heatmap”, “warming_stripes” |
by |
Método de divisão dos dados | “season”, “month”, “weekday”, “daylight”, “yearseason” |
smooth |
Adicionar linha de tendência GAM | TRUE/FALSE |
isave |
Salvar saída no PC | TRUE/FALSE |
iplot |
Exibir gráfico | TRUE/FALSE |
Tem sugestões ou feedback?
Você tem uma ideia para melhoria ou encontrou um erro? Adoraríamos saber! Clique no botão abaixo para criar uma nova issue (GitHub) e compartilhar seu feedback ou sugestões diretamente conosco.
Open GitHub issue