# Caso não tenha os pacotes, baixe em seu computador utilizando a função install.packages("nome_pacote")
library(rgbif) # Extrair dados de espécies
library(dplyr) # Manipulação de dados
library(sf) # Definir geometrias de mapas
library(ggplot2) # Produzir mapas e gráficos
library(rnaturalearth)
library(rnaturalearthdata)
library(cols4all) # Seleção de cores
library(kableExtra) # Visualizar tabelas
Distribuição de Espécies Vegetais no Brasil - Dados GBIF
Mapas de distribuição de espécies
Mapas de distribuição de espécies são representações geográficas que mostram onde uma determinada espécie ocorre no espaço. Eles são amplamente utilizados em estudos ecológicos, biológicos, biogeográficos, e para conservação de espécies e planejamento ambiental. Esses mapas podem ser construídos de diferentes formas, dependendo da disponibilidade de dados e da escala da análise.
Tipos de mapas de distribuição
Mapas de ocorrência: Baseiam-se em registros pontuais da espécie, geralmente obtidos de bancos de dados como GBIF (Global Biodiversity Information Facility) ou de levantamentos de campo.
Mapas de distribuição potencial: Utilizam modelagem preditiva, como Modelos de Nicho Ecológico (ex.: MaxEnt), para estimar onde a espécie pode ocorrer com base em variáveis ambientais.
Mapas de distribuição histórica: Mostram a distribuição passada de uma espécie, com base em registros fósseis, literatura histórica ou inferências paleoecológicas.
Mapas de distribuição futura: Baseiam-se em projeções de mudanças climáticas para prever possíveis deslocamentos na distribuição da espécie ao longo do tempo.
Importância dos mapas de distribuição
Identificação de áreas prioritárias para conservação.
Monitoramento de espécies ameaçadas.
Planejamento de unidades de conservação.
Estudo dos impactos das mudanças climáticas e invasão de espécies exóticas.
Fontes de dados e ferramentas para construção
Bancos de dados globais: GBIF, iNaturalist, SpeciesLink.
SIG (Sistemas de Informação Geográfica): QGIS, ArcGIS.
Modelagem de distribuição de espécies: MaxEnt, Biomod2, ENMTools.
R para análise espacial: Pacotes como
sf
,raster
,terra
edismo
.
Exemplo de um mapa da distribuição de espécies vegetais feito no R
Passo 1: carregar pacotes necessários:
Passo 2: carregar dados
Definir lista de espécies para busca dos dados de ocorrência no GBIF
<- c("Paubrasilia echinata", "Setaria parviflora",
species_list "Achyrocline satureioides", "Bertholletia excelsa",
"Myracrodruon urundeuva")
Função para buscar dados de uma espécie
<- function(species_name) {
get_occ_data occ_search(scientificName = species_name, limit = 500)$data %>%
filter(!is.na(decimalLongitude) & !is.na(decimalLatitude)) %>%
select(decimalLongitude, decimalLatitude) %>%
mutate(species = species_name)
}
Buscar dados para todas as espécies
<- bind_rows(lapply(species_list, get_occ_data)) all_occ_data
Converter para objeto sf
<- st_as_sf(all_occ_data, coords = c("decimalLongitude", "decimalLatitude"), crs = 4326) coords_sf_all
Obter dados das fronteiras dos países
<- ne_countries(scale = "medium", returnclass = "sf") world
Filtrar para um país específico (por exemplo, Brasil)
<- world %>% filter(name == "Brazil") brazil
Filtrar ocorrências para aquelas dentro do Brasil
<- st_intersection(coords_sf_all, brazil) coords_sf_brazil
Dados biomas
<- read_sf("lm_bioma_250.shp")
my_biom head(my_biom, 18)
Simple feature collection with 6 features and 2 fields
Geometry type: MULTIPOLYGON
Dimension: XY
Bounding box: xmin: -73.98318 ymin: -33.75118 xmax: -28.84777 ymax: 5.269581
Geodetic CRS: SIRGAS 2000
# A tibble: 6 × 3
Bioma CD_Bioma geometry
<chr> <int> <MULTIPOLYGON [°]>
1 Amazônia 1 (((-44.08515 -2.416695, -44.0856 -2.416867, -44.08638…
2 Caatinga 2 (((-41.7408 -2.808262, -41.73673 -2.809341, -41.7346 …
3 Cerrado 3 (((-43.39009 -2.339372, -43.38741 -2.342188, -43.3841…
4 Mata Atlântica 4 (((-48.70814 -28.44851, -48.70994 -28.44873, -48.7107…
5 Pampa 5 (((-52.82472 -27.46295, -52.81558 -27.47158, -52.8155…
6 Pantanal 6 (((-57.75946 -15.72779, -57.75659 -15.73327, -57.7564…
Ajustar os limites do mapa para focar na América do Sul
<- c(-81, -36)
xlim <- c(-37, 6.7) ylim
Visualizar mapa
Definir cores
# Seleção de 5 cores do tipo categórica "cat"
## cols4all::c4a_table(type = "cat", n = 5)
# Abre planilha com paletas de cores
## c4a_gui()
Criar mapa com ggplot2
<- ggplot() +
map_sp_vegetation geom_sf(data = my_biom, color = "gray55",
fill = "gray3", show.legend = F) +
geom_sf(data = coords_sf_brazil,
aes(color = species),
size = 2, shape = 18) +
scale_color_manual(
values = c(
"Paubrasilia echinata" = "#CC6677",
"Setaria parviflora" = "#88CCEE",
"Achyrocline satureioides" = "#DDCC77",
"Bertholletia excelsa" = "#117733",
"Myracrodruon urundeuva" = "#cab2d6"),
labels = c(
"Paubrasilia echinata" = expression(italic("Paubrasilia echinata")),
"Setaria parviflora" = expression(italic("Setaria parviflora")),
"Achyrocline satureioides" = expression(italic("Achyrocline satureioides")),
"Bertholletia excelsa" = expression(italic("Bertholletia excelsa")),
"Myracrodruon urundeuva" = expression(italic("Myracrodruon urundeuva")))) +
coord_sf(xlim = xlim, ylim = ylim) +
labs(title = "Distribuição de Espécies Vegetais no Brasil - Dados GBIF*",
x = "Longitude",
y = "Latitude",
colour = "",
caption = "*GBIF – Global Biodiversity Information Facility – é uma rede internacional e uma infra-estrutura de dados financiada\n pelos governos de todo o mundo e que visa fornecer a qualquer pessoa, em qualquer lugar, acesso aberto\n a dados sobre todos os tipos de vida na Terra.") +
theme_minimal() +
theme(legend.position = c(0.26, 0.35),
axis.text = element_text(color = "black",size = 8),
axis.title = element_text(size = 8, hjust = 1),
legend.text = element_text(size = 10),
legend.key = element_rect(fill = "gray3", size = 1.58),
plot.title = element_text(hjust = 0.1, size = 11),
plot.caption = element_text(size = 7),
legend.text.align = 0)
# Visualizar objeto do mapa map_sp_vegetation
Funções do ggplot2 usadas para o mapa
- ggplot(): elaborar gráficos e mapas;
- geom_sf(): definir as coordenadas geográficas no mapa do Brasil e das distribuições das espécies selecionadas;
- scale_color_manual(): definir cores e nomes para cada espécie selecionada;
- coord_sf(): delimitar escalas de coordenadas;
- labs(): denifir título, nome das coordenadas x e y, e legendas;
- theme(): definir background do mapa e alinhamentos, cores e tamanhos de fontes.
Salvar mapa
# Salvar em formato jpg
ggsave("map_sp_vegetation.jpg", dpi = 300,
width = 35, height = 15,
units = "cm", map_sp_vegetation)
# Salvar em formato PDF
ggsave("map_sp_vegetation.pdf", dpi = 300,
width = 35, height = 15,
units = "cm", map_sp_vegetation)