mappingAS: triagem do Critério B (EOO, AOO e conversão MapBiomas)

mappingAS

O que o pacote faz

mappingAS é uma ferramenta no estilo do GeoCat para triagem do Critério B da Lista Vermelha da IUCN. A partir de pontos de ocorrência (.xlsx, .csv ou shapefile), ele:

As categorias de risco são provisórias (apenas limiares de tamanho de EOO/AOO) e servem só para triagem.

library(mappingAS)

1. Importar os pontos

read_occurrences() aceita .csv/.tsv/.txt, .xlsx/.xls e arquivos vetoriais (.shp, .gpkg, .geojson, .zip) e tenta detectar automaticamente as colunas de espécie, longitude e latitude.

# arquivo de exemplo que acompanha o pacote
ex <- system.file("extdata", "example_occurrences.csv", package = "mappingAS")
occ <- read_occurrences(ex)

# se a deteccao falhar, informe as colunas manualmente:
occ <- read_occurrences("meus_dados.csv",
                        species_col = "especie",
                        lon_col = "longitude",
                        lat_col = "latitude")

O resultado é um objeto sf de pontos em WGS84, com uma coluna species.

2. Avaliar as espécies

assess_species() roda toda a cadeia para cada espécie: EOO, AOO, conversão e a categoria provisória.

res <- assess_species(
  occ,
  year = 2024,          # ano do MapBiomas para o "retrato" de cobertura
  collection = 10,      # coleção do MapBiomas
  backend = "local"     # "local" (sem conta GEE) ou "gee"
)

res            # impressão resumida
res$summary    # uma linha por espécie

Principais colunas de res$summary: eoo_km2, aoo_km2, aoo_cells, eoo_converted_pct/eoo_natural_pct, aoo_converted_pct/aoo_natural_pct e provisional_cat.

O índice de conversão usa um denominador terrestre: convertido = antrópico / (antrópico + natural) × 100 (água e “não observado” ficam de fora por padrão; mude com water_in_denominator = TRUE).

3. Mapa e gráfico de conversão

map_species(res)            # leaflet: pontos + EOO + AOO
plot_conversion(res)        # barras: natural / alterado / agua / outros

4. Composição por classe (todas as classes do MapBiomas)

Para ver cada classe dentro do EOO e do AOO:

ct <- class_table(res)
head(ct)
# species | range(EOO/AOO) | code | class_pt | class_en | group | area_km2 | pct

5. Série temporal (% da área × ano)

# a cada 5 anos (padrao), dentro do EOO da primeira especie
ts <- timeseries_for_species(res, range = "eoo", by = "class", years = c(2022, 2024))
plot_timeseries(ts)         # grafico de area empilhada, cores oficiais MapBiomas

# anual (mais lento) e por grupo:
ts_anual <- timeseries_for_species(res, range = "eoo",
                                   years = c(2022, 2024), by = "group")

# ou sobre uma geometria qualquer:
# ts2 <- cover_timeseries(minha_geometria,
#                         years = c(1990, 2000, 2010, 2020),
#                         by = "class", backend = "local")

Cada ano é lido separadamente do MapBiomas, então séries anuais de toda a coleção podem demorar.

6. Exportar

# duas shapefiles (EOO e AOO) + CSV com todas as classes, na pasta "saida"
export_ranges(res, dir = "saida")

# um GeoPackage com as camadas eoo e aoo
export_ranges(res, dir = "saida", format = "gpkg")

# tudo num unico .zip (bom para enviar)
export_ranges(res, dir = "saida", zip = TRUE)

A tabela de atributos traz species, eoo_km2/aoo_km2, conv_pct, nat_pct, cat_B1/cat_B2, prov_cat, mb_year e mb_coll. O arquivo *_classes.csv traz a área e o % de cada classe.

7. Aplicativo Shiny

run_app()

A interface tem abas de Resultados, Mapa, Conversão, Classes, Série temporal e Métodos, com download de CSV, shapefile/GeoPackage e imagens (PNG/HTML).

8. Backends do MapBiomas

install.packages("rgee")
rgee::ee_install()
rgee::ee_Initialize()
res <- assess_species(occ, backend = "gee")

Ressalvas

Citação

Cite também o MapBiomas (Coleção 10), as diretrizes da IUCN para o Critério B e o GeoCAT (Bachman et al., 2011, ZooKeys).