README.Rmd 2.88 KB
Newer Older
Raphael Saldanha's avatar
Raphael Saldanha committed
---
output: github_document
---

<!-- README.md is generated from README.Rmd. Please edit that file -->

```{r, include = FALSE}
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.path = "man/figures/README-",
  out.width = "100%"
)
```

# brclimr

<!-- badges: start -->
<!-- badges: end -->

R package to fetch zonal weather indicators for Brazilian municipalities.

## Installation

You can install the development version of brclimr like so:

``` r
remotes::install_gitlab(repo = "rdefreit/brclimr", host = "https://gitlab.inria.fr")
```

## Main functions

Raphael Saldanha's avatar
Raphael Saldanha committed
Currently, this package fetches zonal statistics from weather indicators created for each Brazilian municipality with data from the BR-DWGD project (Xavier et al. 2022). For each municipality and weather indicator, a series of daily zonal statistics was calculated considering the data cells that intersects the municipality, like mean, max, min, sd and sum.
Raphael Saldanha's avatar
Raphael Saldanha committed

For the BR-DWGD project, the following data can be retrieved with this package

```{r}
library(brclimr)

product_info(product = "brdwgd")
```

To fetch data for a specific product, indicator and statistic, use the fetch_data function. For example, lets consider the Rio de Janeiro, RJ municipality (IBGE code number 3304557), data product "brdwgd", average relative humidity, from 2010-10-15 to 2010-10-20.

```{r}
Raphael Saldanha's avatar
Raphael Saldanha committed
fetch_data(
Raphael Saldanha's avatar
Raphael Saldanha committed
    code_muni = 3304557,
    product = "brdwgd",
    indicator = "rh",
    statistics = "mean",
    date_start = as.Date("2010-10-15"),
    date_end = as.Date("2010-10-20")
  )
```

## Another example

```{r}
Raphael Saldanha's avatar
Raphael Saldanha committed
tmax <- fetch_data(
Raphael Saldanha's avatar
Raphael Saldanha committed
  code_muni = 3303401,
  product = "brdwgd",
  indicator = "tmax",
  statistics = "mean",
  date_start = as.Date("2010-01-01"),
  date_end = as.Date("2012-01-01")
)

Raphael Saldanha's avatar
Raphael Saldanha committed
tmin <- fetch_data(
Raphael Saldanha's avatar
Raphael Saldanha committed
  code_muni = 3303401,
  product = "brdwgd",
  indicator = "tmin",
  statistics = "mean",
  date_start = as.Date("2010-01-01"),
  date_end = as.Date("2012-01-01")
)

Raphael Saldanha's avatar
Raphael Saldanha committed
pr <- fetch_data(
Raphael Saldanha's avatar
Raphael Saldanha committed
  code_muni = 3303401,
  product = "brdwgd",
  indicator = "pr",
  statistics = "sum",
  date_start = as.Date("2010-01-01"),
  date_end = as.Date("2012-01-01")
)

tmax$name <- "Tmax_avg"
tmin$name <- "Tmin_avg"
```

```{r}
library(ggplot2)

ggplot(data = rbind(tmax, tmin), aes(x = date, y = value, color = name)) +
  geom_line() +
  scale_x_date(date_breaks = "2 months", date_labels =  "%m/%y") +
  ylim(0, NA) +
  labs(
    title = "Nova Friburgo, RJ",
    x = "Date", 
    y = "Temperature (average)",
    color = ""
  ) +
  theme_bw() +
  theme(legend.position = "bottom", legend.direction = "horizontal")
```

```{r}
ggplot(data = pr, aes(x = date, y = value)) +
  geom_line(color = "blue") +
  scale_x_date(date_breaks = "2 months", date_labels =  "%m/%y") +
  ylim(0, NA) +
  labs(
    title = "Nova Friburgo, RJ",
    x = "Date", 
    y = "Precipitation (sum)",
    color = ""
  ) +
  theme_bw() +
  theme(legend.position = "bottom", legend.direction = "horizontal")
```