# Analyzing forest fires with the geoideo package

#### Antony Barja

#### 22 Setiembre, 2024

## 1. Introduction

`geoidep` currently allows you to work with data from Serfor’s Satellite Tracking Unit.

However, this project is still under construction, for more information you can visit the GitHub official repository https://github.com/ambarja/geoidep.

If you want to support this project, you can support me with a coffee for my programming moments.

## 2. Package installation

    install.packages("geoidep")

Also, you can install the development version as follows:

    install.packages('pak')
    pak::pkg_install('ambarja/geoidep')

    library(geoidep)

## 3. Filter the available Serfor layer

    providers <- get_data_sources(query = "Serfor")
    providers
    #> # A tibble: 2 × 7
    #>   provider category layer       layer_can_be_actived admin_en        year  link
    #>   <chr>    <chr>    <chr>       <lgl>                <chr>           <chr> <chr>
    #> 1 Serfor   Hazard   fire_forest TRUE                 Ministry of En… Not … http…
    #> 2 Serfor   Hazard   hot_spots   TRUE                 Ministry of En… Not … http…

## 4. Forest fire data collection download

    incendio.forestal <- get_forest_fire_data(show_progress = FALSE)
    #> Reading layer `file47404bd422f7' from data source
    #>   `C:\Users\USER\AppData\Local\Temp\RtmpgztcfX\file47404bd422f7.geojson'
    #>   using driver `GeoJSON'
    #> Simple feature collection with 5678 features and 34 fields
    #> Geometry type: POINT
    #> Dimension:     XY
    #> Bounding box:  xmin: -80.49888 ymin: -15.61481 xmax: -69.10229 ymax: -3.56854
    #> Geodetic CRS:  WGS 84
    head(incendio.forestal)
    #> Simple feature collection with 6 features and 34 fields
    #> Geometry type: POINT
    #> Dimension:     XY
    #> Bounding box:  xmin: -74.48153 ymin: -8.59718 xmax: -74.47054 ymax: -8.59503
    #> Geodetic CRS:  WGS 84
    #>   OBJECTID                                          FUENTE DOCREG     FECREG
    #> 1   195126 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 2   195127 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 3   195128 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 4   195129 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 5   195130 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 6   195131 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #>                                                                                        OBSERV
    #> 1 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 2 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 3 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 4 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 5 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 6 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #>   ZONUTM ORIGEN  NOMDEP           NOMPRO   NOMDIS      CAPITAL      FECHA
    #> 1     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 2     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 3     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 4     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 5     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 6     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #>       HORA CATEG      NOMCATEG  LATITUD  LONGITUD   COORES  COORNO
    #> 1 14:10:00    24 NUEVO PARAISO -8.59718 -74.47883 557346.6 9049643
    #> 2 13:43:00    24 NUEVO PARAISO -8.59653 -74.48153 557049.6 9049715
    #> 3 14:10:00    24 NUEVO PARAISO -8.59642 -74.47469 557802.3 9049726
    #> 4 13:43:00    24 NUEVO PARAISO -8.59578 -74.47691 557558.1 9049798
    #> 5 14:10:00    24 NUEVO PARAISO -8.59565 -74.47054 558259.0 9049811
    #> 6 13:43:00    24 NUEVO PARAISO -8.59503 -74.47227 558068.8 9049880
    #>           CODREP created_user        created_date last_edited_user
    #> 1 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 2 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 3 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 4 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 5 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 6 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #>      last_edited_date ESTADO             TIPCOB PELIGRO REFESTADO CONF CODRVIF
    #> 1 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 2 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 3 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 4 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 5 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 6 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #>   SENSAT CATDEP CATPRO CATDIS                   geometry
    #> 1      N     25   2501 250107 POINT (-74.47883 -8.59718)
    #> 2    N21     25   2501 250107 POINT (-74.48153 -8.59653)
    #> 3      N     25   2501 250107 POINT (-74.47469 -8.59642)
    #> 4    N21     25   2501 250107 POINT (-74.47691 -8.59578)
    #> 5      N     25   2501 250107 POINT (-74.47054 -8.59565)
    #> 6    N21     25   2501 250107 POINT (-74.47227 -8.59503)

## 5. National Forest Fire Count

    library(sf)
    library(dplyr)
    library(ggplot2)
    stats <- incendio.forestal |>
      st_drop_geometry() |>
      filter(FECHA >= '2024-09-11') |>
      group_by(NOMDEP) |>
      summarise( total = n())

    # Simple visualisation
    stats |>
      ggplot(aes(x = NOMDEP, y = total)) +
      geom_bar(stat = "identity") +
      coord_polar() +
      theme_minimal(base_size = 10)  +
      labs(x="", y = "", caption = "Unidad de Monitoreo Forestales - SERFOR")

## 6. Download the official INEI administrative limits of interest

    # Region boundaries download
    ucayali_dep <- get_departaments(show_progress = FALSE) |>
      subset(NOMBDEP == 'UCAYALI')

    # The first five rows
    head(ucayali_dep)
    #> Simple feature collection with 1 feature and 6 fields
    #> Geometry type: MULTIPOLYGON
    #> Dimension:     XY
    #> Bounding box:  xmin: -75.94789 ymin: -11.44834 xmax: -70.49442 ymax: -7.262049
    #> Geodetic CRS:  WGS 84
    #>    id OBJECTID CCDD NOMBDEP SHAPE_Length SHAPE_Area
    #> 24 24       24   25 UCAYALI     27.47016   8.660111
    #>                              geom
    #> 24 MULTIPOLYGON (((-74.47145 -...

## 7. Forest fire count in the area of interest only

    # Data collection only within the regions of interest.
    ucayali.if <- st_filter(incendio.forestal, ucayali_dep)
    head(ucayali.if)
    #> Simple feature collection with 6 features and 34 fields
    #> Geometry type: POINT
    #> Dimension:     XY
    #> Bounding box:  xmin: -74.48153 ymin: -8.59718 xmax: -74.47054 ymax: -8.59503
    #> Geodetic CRS:  WGS 84
    #>   OBJECTID                                          FUENTE DOCREG     FECREG
    #> 1   195126 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 2   195127 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 3   195128 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 4   195129 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 5   195130 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #> 6   195131 Servicio Nacional Forestal y de Fauna Silvestre        2024-09-17
    #>                                                                                        OBSERV
    #> 1 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 2 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 3 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 4 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 5 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #> 6 Información generada por la Unidad Funcional de Monitoreo Satelital de la DGIOFFS de SERFOR
    #>   ZONUTM ORIGEN  NOMDEP           NOMPRO   NOMDIS      CAPITAL      FECHA
    #> 1     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 2     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 3     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 4     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 5     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #> 6     18      2 UCAYALI CORONEL PORTILLO MANANTAY SAN FERNANDO 2024-09-17
    #>       HORA CATEG      NOMCATEG  LATITUD  LONGITUD   COORES  COORNO
    #> 1 14:10:00    24 NUEVO PARAISO -8.59718 -74.47883 557346.6 9049643
    #> 2 13:43:00    24 NUEVO PARAISO -8.59653 -74.48153 557049.6 9049715
    #> 3 14:10:00    24 NUEVO PARAISO -8.59642 -74.47469 557802.3 9049726
    #> 4 13:43:00    24 NUEVO PARAISO -8.59578 -74.47691 557558.1 9049798
    #> 5 14:10:00    24 NUEVO PARAISO -8.59565 -74.47054 558259.0 9049811
    #> 6 13:43:00    24 NUEVO PARAISO -8.59503 -74.47227 558068.8 9049880
    #>           CODREP created_user        created_date last_edited_user
    #> 1 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 2 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 3 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 4 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 5 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #> 6 PIF_02967_2024       USUFMS 2024-09-18 16:00:13           UFMS17
    #>      last_edited_date ESTADO             TIPCOB PELIGRO REFESTADO CONF CODRVIF
    #> 1 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 2 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 3 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 4 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 5 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #> 6 2024-09-20 06:20:59      2 Cobertura Forestal       0         0    0       0
    #>   SENSAT CATDEP CATPRO CATDIS                   geometry
    #> 1      N     25   2501 250107 POINT (-74.47883 -8.59718)
    #> 2    N21     25   2501 250107 POINT (-74.48153 -8.59653)
    #> 3      N     25   2501 250107 POINT (-74.47469 -8.59642)
    #> 4    N21     25   2501 250107 POINT (-74.47691 -8.59578)
    #> 5      N     25   2501 250107 POINT (-74.47054 -8.59565)
    #> 6    N21     25   2501 250107 POINT (-74.47227 -8.59503)

## 8. Simple visualization with leaflet

    library(leaflet)
    #>
    #> Adjuntando el paquete: 'leaflet'
    #> The following object is masked _by_ '.GlobalEnv':
    #>
    #>     providers
    library(leaflet.extras)
    ucayali.if |>
      leaflet() |>
      addProviderTiles(provider = "CartoDB.Positron") |>
      addHeatmap(radius = 10,minOpacity = 1)