library(httr)
library(jsonlite)
library(tidyverse)
<- function(place_id, taxon_id, quality_grade){
getCarpobrotusObservations
= NULL
total_results = 1
page = 1.0
delay = tibble()
results
while(is.null(total_results) || nrow(results) < total_results) {
<- str_glue('https://api.inaturalist.org/v1/observations?',
call_url 'place_id={place_id}&taxon_id={taxon_id}',
'&captive=false&geoprivacy=open',
'&quality_grade={quality_grade}',
'&per_page=200&page={page}')
<- GET(url = call_url) %>%
get_json_call content(as = "text") %>% fromJSON(flatten = TRUE)
if (!is.null(get_json_call)) {
if (is.null(total_results)) {
<- get_json_call$total_results # number of results of the call
total_results
}<- as_tibble(get_json_call$results) %>%
results_i select(taxon.name, taxon.rank, identifications_count,
created_at, observed_on,
geojson.coordinates, positional_accuracy,
user.login, user.id, user.name, user.observations_count,
user.identifications_count, user.activity_count, %>%
license_code, num_identification_agreements, uri) unnest_wider(geojson.coordinates, names_sep = "_") %>%
rename(longitude=geojson.coordinates_1, latitude=geojson.coordinates_2)
<- rbind(results, results_i)
results <- page + 1
page Sys.sleep(delay)
}
}return(results)
}
<- getCarpobrotusObservations(place_id=7259,
datos_carpobrotus taxon_id=49322,
quality_grade='research')
<- datos_carpobrotus %>% filter(created_at<='2023-06-09') datos_carpobrotus
Supplementary Information
Status of the invasion of Carpobrotus edulis in Uruguay based on community science records
Carpobrotus edulis
Data download
To download the data we used the iNaturalist API, considering:
- ‘Uruguay’ as location:
place_id=7259
- ‘Carpobrotus edulis’ as taxon:
taxon_id=49322
- ‘Research grade’ as data quality assessment:
quality_grade=research
Spatial and temporal analyses
Data preparation
To download the polygon for Uruguay, I used the geouy
package, with geouy::load_geouy('Dptos')
. I saved this object to avoid downloading it manually again. The CRS of the sf object is: EPSG:32721
. I also used the package geonames
to get the department (stateProvince
) for each record.
Code
library(lubridate)
library(geonames)
options(geonamesUsername="biodiversidata") # A (free) username is required and rate limits exist
library(sf)
::sf_use_s2(FALSE)
sf# options
options(scipen = 999)
<- readRDS('data/Uruguay.rds')
uruguay <- c('MONTEVIDEO','MALDONADO','CANELONES', 'ROCHA')
deptos_costeros <- uruguay %>% filter(nombre %in% deptos_costeros)
costa_uruguay <- uruguay %>% filter(nombre %in% c(deptos_costeros, 'SAN JOSÉ'))
costa_entera_uruguay <- readRDS('data/localidades.RDS')
localidades <- localidades %>% filter(NOMBDEPTO %in% deptos_costeros)
localidades_costa <- read_sf('data/areas_protegidas/c397Polygon.shp', options = 'ENCODING=WINDOWS-1252') %>%
areas_protegidas st_transform(32721) %>% st_cast()
<- areas_protegidas %>%
areas_protegidas_costa filter(nombre %in% c('Cerro Verde', 'Cabo Polonio', 'Laguna de Rocha', 'Laguna Garzón', 'Isla de Flores', 'Humedales del Santa Lucla'))
<- function(lat, lng){
getStateProvince <- try(GNcountrySubdivision(lat, lng, radius = "1", maxRows = 1), silent = TRUE)
subdivision Sys.sleep(1.0)
if(class(subdivision)=='try-error'){
$adminName1 <- NA
subdivision
}else if (length(subdivision$adminName1)==0){
$adminName1 <- NA
subdivision
}return(subdivision$adminName1)
}
# stateProvince of earch record
<- datos_carpobrotus %>%
datos_carpobrotusmutate(stateProvince=map2_chr(latitude, longitude, getStateProvince))
<- datos_carpobrotus %>%
datos_carpobrotus mutate(stateProvince =case_when(stateProvince=='Rocha Department' ~ 'Rocha',
=='Montevideo Department' ~ 'Montevideo',
stateProvinceTRUE ~ stateProvince))
# estación del año
<- datos_carpobrotus %>%
datos_carpobrotusmutate(observed_on=as_date(observed_on)) %>%
mutate(season=lubridate::quarter(observed_on)) %>%
mutate(season=ifelse(season==1, 'summer',
ifelse(season==2, 'autumn',
ifelse(season==3, 'winter', 'spring'))))
saveRDS(datos_carpobrotus, 'data/datos_carpobrotus.rds')
write_excel_csv(datos_carpobrotus, 'data/datos_carpobrotus.csv', na = '')
Spatial coverage
Code
library(tmap)
tmap_mode("view")
<- datos_carpobrotus %>%
sf_carpobrotus st_as_sf(coords = c("longitude", "latitude")) %>%
st_set_crs(4326) %>%
st_transform(32721)
tm_graticules(alpha = 0.3) +
tm_shape(areas_protegidas_costa) +
tm_fill('darkgreen', alpha = 0.4) +
tm_shape(localidades_costa %>% filter(AREA>5000000)) +
tm_fill(col='blue', alpha = 0.4) +
tm_shape(sf_carpobrotus) +
tm_dots(alpha = 0.4)
Code
<- tm_graticules(alpha = 0.3) +
mapa.carpobrotus tm_shape(uruguay, bbox = costa_entera_uruguay) +
tm_fill(col='grey97') +
tm_borders(col='grey80', alpha = 0.4) +
tm_shape(costa_uruguay) +
tm_fill(col='grey90') +
tm_borders(col='grey60', alpha = 0.4) +
tm_shape(st_intersection(areas_protegidas_costa, uruguay)) +
tm_fill('darkgreen', alpha = 0.4) +
tm_shape(localidades_costa %>% filter(AREA>5000000)) +
tm_fill(col='blue', alpha = 0.4) +
tm_shape(sf_carpobrotus) +
tm_dots(alpha = 0.4) +
tm_layout(scale = 2)
tmap_save(mapa.carpobrotus, 'figs/mapa.carpobrotus.svg')
Departments
Code
library(knitr)
%>%
datos_carpobrotus group_by(stateProvince) %>%
count() %>% rename(Department=stateProvince,
`Number of records`=n) %>%
kable()
Department | Number of records |
---|---|
Canelones | 46 |
Maldonado | 98 |
Montevideo | 12 |
Rocha | 48 |
Protected areas
Code
<- st_join(areas_protegidas_costa,
carpobrotus_areas_protegidas %>%
sf_carpobrotus) group_by(id, nombre) %>%
summarise(NR=ifelse(n_distinct(taxon.name, na.rm=T)!=0, n(), 0),
presence=ifelse(NR>0, 1, 0)) %>%
st_cast()
<- tm_graticules(alpha = 0.3) +
mapa.carpobrotus.areas_protegidas tm_shape(uruguay, bbox = costa_entera_uruguay) +
tm_fill(col='grey97') +
tm_borders(col='grey80', alpha = 0.4) +
tm_shape(costa_uruguay) +
tm_fill(col='grey90') +
tm_borders(col='grey60', alpha = 0.4) +
tm_shape(carpobrotus_areas_protegidas) +
tm_fill('presence', alpha = 0.4, style = 'cat', palette = 'Set1')
mapa.carpobrotus.areas_protegidas
Temporal coverage
A total of 78 users recorded 204 observations of Carpobrotus edulis. The first records is from 2008-03-16 and the last is from 2023-05-10.
Seasons
Code
library(patchwork)
<- datos_carpobrotus %>%
timeline.plot add_count(taxon.name, year=year(observed_on),
name='records_per_year') %>%
ggplot(., aes(x=observed_on, y=records_per_year)) +
geom_line(show.legend = FALSE, linewidth=1) +
scale_x_date(date_breaks = "1 year", date_labels = "%Y") +
theme_bw()+
labs(x='', y= 'Number of records')
<- datos_carpobrotus %>%
season.year.plot add_count(taxon.name, season, name='records_per_season') %>%
mutate(season=factor(season,
levels = c('summer', 'autumn', 'winter', 'spring'))) %>%
ggplot(aes(x=season, y=observed_on)) +
geom_jitter(aes(col = season), width = 0.01, show.legend = FALSE) +
stat_summary(fun = mean, fun.min = min, fun.max = max) +
theme_bw() +
labs(x='', y= 'Date')
<- datos_carpobrotus %>%
season.n.plot add_count(taxon.name, season, name='records_per_season') %>%
mutate(season=factor(season,
levels = c('summer', 'autumn', 'winter', 'spring'))) %>%
ggplot(aes(x=season, y=records_per_season)) +
geom_segment(aes(x=season, xend=season, y=0,
yend=records_per_season, col=season), show.legend = FALSE) +
geom_point(aes(col=season), show.legend = FALSE) +
theme_bw() +
labs(x='', y= 'Number of records')
/ (season.year.plot | season.n.plot) timeline.plot
Code
ggsave(timeline.plot, filename='figs/timeline.plot.svg', device = 'svg', width=6, height=3, dpi=300)
ggsave(season.n.plot, filename='figs/season.n.plot.svg', device = 'svg', width=3, height=3, dpi=300)
Photographic analyses
We assessed the following attributes:
- Density: high, medium, low
- Phenology: no evidence of flowering/fruiting, flowering, flower budding , fruiting, flowering/flower budding, flowering/fruiting
- Presence of humann infraestructure: present, absent
Code
<- read_csv('data/photo_evalutaion.csv')
photo_evaluation
<- left_join(datos_carpobrotus,
photo_evaluation_carpobrotus %>% select(uri, density, phenology, infrastructure)) %>%
photo_evaluation mutate(density = case_when(density=='alta'|density=='alta/media' ~ 'high',
=='media'|density=='media/alta' ~ 'medium',
density=='baja' ~ 'low',
densityis.na(density) ~ 'not assessed')) %>%
mutate(phenology=ifelse(phenology=='No evidence of flowering',
'no evidence of flowering/fruiting', phenology)) %>%
mutate(infrastructure = case_when(infrastructure==0 ~ 'absent',
==1 ~ 'present',
infrastructureis.na(infrastructure) ~ 'not assessed')) %>%
mutate(density=fct_relevel(density, c('high', 'medium', 'low', 'not assessed')))
<- photo_evaluation_carpobrotus %>%
sf_photo_evaluation_carpobrotus st_as_sf(coords = c("longitude", "latitude")) %>%
st_set_crs(4326) %>%
st_transform(32721)
Density
Code
%>%
photo_evaluation_carpobrotus group_by(density) %>%
summarise(count = n()) %>%
mutate(freq = scales::label_percent()(count / sum(count))) %>%
arrange(desc(count)) %>%
rename(Density=density, N=count, `%`=freq) %>%
kable()
Density | N | % |
---|---|---|
high | 75 | 36.8% |
medium | 67 | 32.8% |
not assessed | 33 | 16.2% |
low | 29 | 14.2% |
Code
tmap_mode("view")
# interactivos
tm_graticules(alpha = 0.3) +
tm_shape(localidades_costa %>% filter(AREA>5000000)) +
tm_fill(col='grey10', alpha = 0.4) +
tm_shape(sf_photo_evaluation_carpobrotus %>%
mutate(density=ifelse(density=='not assessed', NA, density))) +
tm_dots(col = 'density', title = 'Density',
palette = 'PRGn', showNA=F, labels=c('high', 'medium', 'low')) +
tm_shape(costa_uruguay) +
tm_borders(col='grey60', alpha = 0.4)
Phenology
Code
%>%
photo_evaluation_carpobrotus group_by(phenology) %>%
summarise(count = n()) %>%
mutate(freq = scales::label_percent()(count / sum(count))) %>%
arrange(desc(count)) %>%
rename(Phenology=phenology, N=count, `%`=freq) %>%
kable()
Phenology | N | % |
---|---|---|
no evidence of flowering/fruiting | 117 | 57.35% |
fruiting | 42 | 20.59% |
flowering | 27 | 13.24% |
flowering/flower budding | 11 | 5.39% |
flowering/fruiting | 4 | 1.96% |
flower budding | 3 | 1.47% |
Code
<- photo_evaluation_carpobrotus %>%
phenology.plot filter(!phenology %in% c('flower budding', 'flowering/fruiting' )) %>%
add_count(phenology, month=(month(observed_on)),
name='records_per_month') %>%
select(month, records_per_month, phenology) %>%
group_by(month) %>% distinct(phenology,.keep_all = T) %>%
mutate(total_phenology_per_month=sum(records_per_month)) %>% ungroup() %>%
mutate(percentage=records_per_month*100/total_phenology_per_month) %>%
complete(month, phenology, fill = list(percentage = 0)) %>%
ggplot(., aes(x=(month), #strftime(observed_on, format="%b"),
y=percentage,
col=phenology)) +
geom_line(size=2) +
scale_color_brewer(palette='Set2') +
scale_x_continuous(breaks= c(1,2,3,4,5,6,7,8,9,10,11,12),
labels = c('Jan', 'Feb', 'Mar',
'Apr','May','Jun','Jul',
'Aug','Sep','Oct','Nov','Dec'))+
scale_y_continuous(labels = scales::percent_format(scale = 1)) +
theme_bw() +
labs(x='Months', y= '% of records', col='Phenology')
phenology.plot
Code
ggsave(phenology.plot, filename='figs/phenology.plot.svg', device = 'svg', width=7.2, height=5.2, dpi=300)
Infraestructure
Code
%>%
photo_evaluation_carpobrotus group_by(infrastructure) %>%
summarise(count = n()) %>%
mutate(freq = scales::label_percent()(count / sum(count))) %>%
arrange(desc(count)) %>%
rename(Infrastructure=infrastructure, N=count, `%`=freq) %>%
kable()
Infrastructure | N | % |
---|---|---|
absent | 120 | 58.8% |
present | 46 | 22.5% |
not assessed | 38 | 18.6% |
Code
tmap_mode("view")
tm_graticules(alpha = 0.3) +
tm_shape(localidades_costa %>% filter(AREA>5000000)) +
tm_fill(col='grey10', alpha = 0.4) +
tm_shape(sf_photo_evaluation_carpobrotus) +
tm_dots(col = 'infrastructure', title = 'Infrastructure',
palette = 'Set1', labels=c('absent', 'present','not assessed')) +
tm_shape(costa_uruguay) +
tm_borders(col='grey60', alpha = 0.4)
All records on NaturalistaUY
Data download (Montevideo, Canelones, Maldonado and Rocha)
Because iNat’s API doesn’t allow to download more than 10,000 records, we downloaded the data directly from the website naturalista.uy/observations/export. We considered:
- ‘Montevideo’, ‘Canelones’, ‘Maldonado’ and ‘Rocha’ as location:
place_id=12416
,place_id=12410
,place_id=12415
,place_id=12420
- ‘FALSE’ as captive/cultivated quality assessment:
captive=false
- ‘open’ as geoprivacy:
geoprivacy=open
Code
<- read_csv('data/observations-334644.csv', guess_max = 72000)
allObservations
<- allObservations %>%
allObservations filter(coordinates_obscured==FALSE &
!is.na(taxon_species_name) &
== FALSE) %>%
captive_cultivated select(kingdom=taxon_kingdom_name, phylum=taxon_phylum_name,
class=taxon_class_name, order=taxon_order_name,
family=taxon_family_name, genus=taxon_genus_name,
species=taxon_species_name, scientific_name,
quality_grade, observed_on, user_login, user_id,state_province=place_admin1_name,
longitude, latitude)
# filter plant data
<- left_join(
all_records_time %>% mutate(year=year(observed_on)) %>%
datos_carpobrotus add_count(taxon.name, year=year(observed_on),
name='records_per_year') %>%
select(observed_on, year, carpobrotus_records_per_year= records_per_year),
%>% mutate(year=year(observed_on)) %>%
allObservations filter(kingdom=='Plantae') %>%
add_count(year=year(observed_on),
name='records_per_year') %>%
select(year, all_records_per_year=records_per_year) %>%
distinct(year, all_records_per_year)
)
Temporal coverage
Code
<- 100
coef
<- ggplot(data=all_records_time %>% filter(observed_on<'2022-12-31'),
double_temporal_plot aes(x=observed_on)) +
geom_line(aes(y=carpobrotus_records_per_year, col='Carpobrotus'), size=1) +
geom_line(aes(y=all_records_per_year/coef, col='Plantae'), size=1, show.legend = F) +
scale_y_continuous(name = expression(paste('Number of ', italic('Carpobrotus edulis'), ' records')),
sec.axis = sec_axis(~.*coef,
name= 'Number of Plant records')) +
scale_x_date(date_breaks = "1 year", date_labels = "%Y") +
theme_bw() + labs(x='', col='')
double_temporal_plot
Code
ggsave(double_temporal_plot, filename='figs/double.temporal.plot.svg', device = 'svg', width=6, height=3, dpi=300)
Spatial analyses
Creation of grid cell (10x10km)
<- allObservations %>%
allObservations_sf st_as_sf(coords = c("longitude", "latitude")) %>%
st_set_crs(4326) %>%
st_transform(32721)
<- st_make_grid(st_union(costa_uruguay), 10000) %>%
costa_uruguay_grillas st_intersection(st_union(costa_uruguay)) %>%
st_sf(gridID=1:length(.), geometry= .) %>%
st_make_valid() %>% st_cast()
Intersection of grid cells with all the data and the data of Caprobrotus edulis
<- st_join(costa_uruguay_grillas,
grillas_allObservations %>%
allObservations_sf) group_by(gridID) %>%
summarise(NR=ifelse(n_distinct(species, na.rm=T)!=0, n(), 0),
SR=n_distinct(species, na.rm = T),
spsList = paste(species, collapse = ';')) %>%
st_cast()
<- st_join(costa_uruguay_grillas, sf_carpobrotus) %>%
grillas_carpobrotus group_by(gridID) %>%
summarise(NR=ifelse(n_distinct(taxon.name, na.rm=T)!=0, n(), 0)) %>%
st_cast()
Estimation of sampling effort per grid cell
We used the function get_gridsSlopes()
created by Biodiversidata (Grattarola et al. 2020).
Code
# The function ```get_gridsSlopes``` finds a species accumulation curve (SAC) for each grid-cell using the method ‘exact’ of the function ```specaccum``` of the vegan package and then calculates the degree of curvilinearity as the mean slope of the last 10% of the curve.
library(vegan)
library(spaa)
<- function(data_abundance){
get_gridsSlopes <- data.frame(gridID=integer(), slope=numeric(), stringsAsFactors=FALSE)
gridSlope <- as.data.frame(data_abundance)
data_abundance $abundance <- as.integer(1)
data_abundance<- unique(data_abundance$gridID)
cells <- list()
splistT <- list()
spaccum <- list()
slope for (i in cells) {
<- data_abundance[data_abundance$gridID == i,c(2:4)]
splist = data2mat(splist)
splistT[[i]] = specaccum(splistT[[i]], method = "exact")
spaccum[[i]] = (spaccum[[i]][[4]][length(spaccum[[i]][[4]])]-
slope[[i]] 4]][ceiling(length(spaccum[[i]][[4]])*0.9)])/
spaccum[[i]][[length(spaccum[[i]][[4]])- ceiling(length(spaccum[[i]][[4]])*0.9))
(<- data.frame(gridID=i, slope=slope[[i]], stringsAsFactors=FALSE)
gridSlope_i <- rbind(gridSlope, gridSlope_i)
gridSlope
}<- gridSlope %>% as_tibble() %>%
gridSlope mutate(slope=ifelse(is.nan(slope), NA, slope))
return(gridSlope)
}
<- grillas_allObservations %>% as_tibble() %>%
allObservations.SACs mutate(species=str_split(spsList, ';')) %>%
unnest(species) %>%
group_by(spsList) %>% mutate(sample = row_number()) %>%
ungroup() %>%
mutate(sample=ifelse(is.na(species), 0 , sample)) %>%
select(gridID, sample, species)
<- get_gridsSlopes(allObservations.SACs) allObservations.incompleteness
Spatian join
All the data per grid cell: total number of records, species richness, incompleteness curve (national sampling effort), and number of records of Carpobrotus edulis.
<- left_join(grillas_allObservations,
costa_uruguay.incompleteness %>%
allObservations.incompleteness) left_join(., grillas_carpobrotus %>%
rename(carpobrotus=NR) %>%
st_drop_geometry())
Sampling bias
Maps
Correlations (non-spatial)
Code
library(ggpubr)
<- costa_uruguay.incompleteness %>%
tabla.final st_drop_geometry() %>%
select(grilla=gridID, NR, SR, carpobrotus, slope)
summary(lm(carpobrotus ~ NR, data=tabla.final))
Call:
lm(formula = carpobrotus ~ NR, data = tabla.final)
Residuals:
Min 1Q Median 3Q Max
-13.3254 -0.1541 0.0797 0.1381 23.3044
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -0.1381389 0.1583721 -0.872 0.384
NR 0.0073048 0.0005093 14.342 <0.0000000000000002 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 2.365 on 259 degrees of freedom
Multiple R-squared: 0.4426, Adjusted R-squared: 0.4405
F-statistic: 205.7 on 1 and 259 DF, p-value: < 0.00000000000000022
Code
<- tabla.final %>% filter(carpobrotus>0) %>%
nr.caprobrotus ggplot(aes(x=NR, y=carpobrotus)) +
geom_jitter() +
geom_smooth(method = 'lm') +
stat_regline_equation(label.y = 30, aes(label = ..eq.label..)) +
stat_regline_equation(label.y = 28, aes(label = ..adj.rr.label..)) +
labs(x='Number of records per grid cell', y='Caprobrotus edulis records per grid cell') +
theme_bw()
summary(lm(carpobrotus ~ slope, data=tabla.final))
Call:
lm(formula = carpobrotus ~ slope, data = tabla.final)
Residuals:
Min 1Q Median 3Q Max
-5.5117 -1.6170 -0.3330 0.8455 29.9189
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 7.202 1.004 7.172 0.000000000044 ***
slope -8.586 1.404 -6.118 0.000000009632 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 3.788 on 135 degrees of freedom
(124 observations deleted due to missingness)
Multiple R-squared: 0.2171, Adjusted R-squared: 0.2113
F-statistic: 37.43 on 1 and 135 DF, p-value: 0.000000009632
Code
<- tabla.final %>% filter(carpobrotus>0) %>%
incompleteness.caprobrotus ggplot(aes(x=slope, y=carpobrotus)) +
geom_point() + geom_smooth(method = 'lm') +
stat_regline_equation(label.y = 30, label.x = 0.65, aes(label = ..eq.label..)) +
stat_regline_equation(label.y = 28, label.x = 0.65, aes(label = ..adj.rr.label..)) +
labs(x='Sampling incompleteness per grid cell', y='Caprobrotus edulis records per grid cell') +
theme_bw()
/ incompleteness.caprobrotus nr.caprobrotus
Code
ggsave(nr.caprobrotus | incompleteness.caprobrotus, filename='figs/correlation.plot.svg', device = 'svg', width=9.2, height=5.2, dpi=300)
Spatial correlations
Code
library(SpatialPack)
<- st_centroid(costa_uruguay.incompleteness) %>%
XY_costa_uruguay.incompleteness st_coordinates() %>% as_tibble()
<- modified.ttest(costa_uruguay.incompleteness$NR,
costa_uruguay.incompleteness.cor $carpobrotus,
costa_uruguay.incompleteness
XY_costa_uruguay.incompleteness)
<- tibble(Cor = 'total number of records vs records of C. edulis',
CORR_NR R = costa_uruguay.incompleteness.cor$corr,
p.value = costa_uruguay.incompleteness.cor$p.value,
Fstat = costa_uruguay.incompleteness.cor$Fstat,
dof = costa_uruguay.incompleteness.cor$dof)
%>%
CORR_NR kable(digits = 3)
Cor | R | p.value | Fstat | dof |
---|---|---|---|---|
total number of records vs records of C. edulis | 0.665 | 0 | 0.794 | 153.634 |
Code
<- readRDS('data/demografia_hogares.rds')
demografia_hogares
<- st_join(costa_uruguay_grillas, demografia_hogares) %>%
pop_por_grilla group_by(gridID) %>%
summarise(pop=sum(h_tot, na.rm = T)) %>%
st_cast()
<- modified.ttest(costa_uruguay.incompleteness$NR,
pop_por_grilla.cor $pop,
pop_por_grilla
XY_costa_uruguay.incompleteness)
<- tibble(Cor = 'number of inhabitants vs records of C. edulis',
CORR_POP R = pop_por_grilla.cor$corr,
p.value = pop_por_grilla.cor$p.value,
Fstat = pop_por_grilla.cor$Fstat,
dof = pop_por_grilla.cor$dof)
%>%
CORR_POP kable(digits = 3)
Cor | R | p.value | Fstat | dof |
---|---|---|---|---|
number of inhabitants vs records of C. edulis | 0.299 | 0.012 | 0.099 | 67.403 |
Code
tmap_mode("view")
tm_graticules(alpha = 0.3) +
tm_shape(pop_por_grilla) +
tm_fill(col='pop', n = 6, style='jenks', title='Population') +
tm_shape(costa_uruguay) +
tm_borders(col='grey60', alpha = 0.4)
Final table
Data per grid cell:
- Number of records: total number of records on NaturalistaUY (all species)
- Species richness: total number of species on NaturalistaUY
- Carpobrotus records: number of records of Carpobrotus edulis on NaturalistaUY
- Incompleteness: slope of the SAC, a measure of sampling effort (values close to 0 indicate well sampled grid cells)
Code
%>% filter(carpobrotus>0) %>% arrange(slope) %>%
tabla.final select(`Number of records`=NR,
`Species richness`=SR,
`Carpobrotus record`=carpobrotus,
Incompleteness=slope) %>%
kable(digits = 3)
Number of records | Species richness | Carpobrotus record | Incompleteness |
---|---|---|---|
1980 | 792 | 1 | 0.204 |
1507 | 620 | 2 | 0.219 |
992 | 424 | 10 | 0.246 |
1620 | 691 | 35 | 0.247 |
1093 | 493 | 13 | 0.267 |
1213 | 572 | 8 | 0.274 |
1040 | 493 | 14 | 0.289 |
1066 | 508 | 13 | 0.293 |
996 | 541 | 7 | 0.312 |
1297 | 681 | 4 | 0.335 |
635 | 345 | 3 | 0.345 |
480 | 250 | 1 | 0.355 |
1001 | 568 | 11 | 0.370 |
735 | 433 | 19 | 0.393 |
443 | 258 | 6 | 0.400 |
347 | 205 | 4 | 0.410 |
481 | 304 | 8 | 0.453 |
326 | 216 | 1 | 0.461 |
419 | 267 | 8 | 0.461 |
202 | 130 | 1 | 0.462 |
122 | 82 | 4 | 0.471 |
547 | 365 | 3 | 0.481 |
254 | 184 | 4 | 0.566 |
239 | 179 | 4 | 0.604 |
159 | 122 | 2 | 0.615 |
103 | 85 | 3 | 0.698 |
89 | 80 | 1 | 0.815 |
Final dataset
Code
%>% mutate(country='Uruguay') %>%
datos_carpobrotus select(species=taxon.name,
`URL`=uri,
`geographic area`=stateProvince,
country, `observed on`=observed_on) %>%
kable()
species | URL | geographic area | country | observed on |
---|---|---|---|---|
Carpobrotus edulis | https://www.inaturalist.org/observations/165758448 | Canelones | Uruguay | 2023-05-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/160747945 | Montevideo | Uruguay | 2023-05-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/160665773 | Rocha | Uruguay | 2023-05-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/160469238 | Canelones | Uruguay | 2023-05-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/160107383 | Montevideo | Uruguay | 2023-05-06 |
Carpobrotus edulis | https://www.inaturalist.org/observations/160107298 | Montevideo | Uruguay | 2023-05-06 |
Carpobrotus edulis | https://www.inaturalist.org/observations/157858181 | Canelones | Uruguay | 2023-04-29 |
Carpobrotus edulis | https://www.inaturalist.org/observations/157424891 | Maldonado | Uruguay | 2023-04-27 |
Carpobrotus edulis | https://www.inaturalist.org/observations/156602647 | Maldonado | Uruguay | 2023-04-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/156316414 | Maldonado | Uruguay | 2023-04-23 |
Carpobrotus edulis | https://www.inaturalist.org/observations/156316292 | Maldonado | Uruguay | 2023-04-23 |
Carpobrotus edulis | https://www.inaturalist.org/observations/154544864 | Maldonado | Uruguay | 2023-04-06 |
Carpobrotus edulis | https://www.inaturalist.org/observations/154140599 | Montevideo | Uruguay | 2023-04-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/154140160 | Montevideo | Uruguay | 2023-04-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/154140050 | Montevideo | Uruguay | 2023-04-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/154139981 | Montevideo | Uruguay | 2023-04-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/154006507 | Canelones | Uruguay | 2023-04-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/153844993 | Maldonado | Uruguay | 2023-04-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/153844895 | Maldonado | Uruguay | 2023-04-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/153824614 | Canelones | Uruguay | 2023-04-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/153610798 | Maldonado | Uruguay | 2023-04-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/153574035 | Maldonado | Uruguay | 2023-03-08 |
Carpobrotus edulis | https://www.inaturalist.org/observations/153350214 | Maldonado | Uruguay | 2023-04-02 |
Carpobrotus edulis | https://www.inaturalist.org/observations/152541633 | Maldonado | Uruguay | 2023-03-08 |
Carpobrotus edulis | https://www.inaturalist.org/observations/152438876 | Canelones | Uruguay | 2023-03-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/151143893 | Maldonado | Uruguay | 2023-03-14 |
Carpobrotus edulis | https://www.inaturalist.org/observations/151143845 | Maldonado | Uruguay | 2023-03-14 |
Carpobrotus edulis | https://www.inaturalist.org/observations/150497307 | Maldonado | Uruguay | 2023-03-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/150497260 | Maldonado | Uruguay | 2023-03-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/150245299 | Maldonado | Uruguay | 2023-03-04 |
Carpobrotus edulis | https://www.inaturalist.org/observations/150245186 | Maldonado | Uruguay | 2023-03-04 |
Carpobrotus edulis | https://www.inaturalist.org/observations/150245008 | Maldonado | Uruguay | 2023-03-04 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149666564 | Rocha | Uruguay | 2023-02-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149431100 | Maldonado | Uruguay | 2023-02-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149265269 | Maldonado | Uruguay | 2023-02-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149239474 | Maldonado | Uruguay | 2023-02-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149203139 | Maldonado | Uruguay | 2023-02-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149169295 | Maldonado | Uruguay | 2023-02-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/149168987 | Maldonado | Uruguay | 2023-02-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/148868594 | Maldonado | Uruguay | 2023-01-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/148838888 | Maldonado | Uruguay | 2023-02-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/148609917 | Maldonado | Uruguay | 2023-02-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/147333000 | Maldonado | Uruguay | 2023-01-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/147268384 | Maldonado | Uruguay | 2023-01-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/147268334 | Maldonado | Uruguay | 2023-01-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/147245932 | Maldonado | Uruguay | 2023-01-23 |
Carpobrotus edulis | https://www.inaturalist.org/observations/147122640 | Canelones | Uruguay | 2023-01-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146999721 | Maldonado | Uruguay | 2023-01-21 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146999397 | Maldonado | Uruguay | 2023-01-21 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146990683 | Maldonado | Uruguay | 2023-01-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146931423 | Maldonado | Uruguay | 2023-01-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146885644 | Maldonado | Uruguay | 2023-01-18 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146822047 | Maldonado | Uruguay | 2023-01-13 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146650655 | Rocha | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146650577 | Rocha | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146642537 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146642317 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146642176 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146642045 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146641979 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146641645 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146641633 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146641095 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146618601 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146618570 | Maldonado | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146617550 | Rocha | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146607130 | Rocha | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146606806 | Rocha | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146606746 | Rocha | Uruguay | 2023-01-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146540142 | Canelones | Uruguay | 2023-01-14 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146525194 | Rocha | Uruguay | 2023-01-14 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146422669 | Maldonado | Uruguay | 2022-07-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146402870 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146402751 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146402560 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146399293 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146399189 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146399053 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146398942 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146398732 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146395210 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146395163 | Rocha | Uruguay | 2023-01-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146359237 | Rocha | Uruguay | 2023-01-11 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146344500 | Rocha | Uruguay | 2023-01-11 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146342544 | Rocha | Uruguay | 2023-01-11 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146307705 | Maldonado | Uruguay | 2023-01-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146306693 | Canelones | Uruguay | 2023-01-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146306434 | Canelones | Uruguay | 2023-01-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146306222 | Canelones | Uruguay | 2023-01-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146294366 | Rocha | Uruguay | 2023-01-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146294199 | Rocha | Uruguay | 2023-01-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146280646 | Canelones | Uruguay | 2023-01-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146280645 | Canelones | Uruguay | 2023-01-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146274697 | Canelones | Uruguay | 2022-11-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146251684 | Canelones | Uruguay | 2023-01-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146234118 | Canelones | Uruguay | 2023-01-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146211779 | Rocha | Uruguay | 2023-01-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/146158085 | Maldonado | Uruguay | 2023-01-08 |
Carpobrotus edulis | https://www.inaturalist.org/observations/145908480 | Canelones | Uruguay | 2008-03-16 |
Carpobrotus edulis | https://www.inaturalist.org/observations/145689039 | Canelones | Uruguay | 2015-10-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/145228162 | Maldonado | Uruguay | 2022-12-27 |
Carpobrotus edulis | https://www.inaturalist.org/observations/145053220 | Maldonado | Uruguay | 2022-12-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/145046175 | Maldonado | Uruguay | 2011-02-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/144894147 | Canelones | Uruguay | 2022-12-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/143260064 | Maldonado | Uruguay | 2022-11-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/142292751 | Rocha | Uruguay | 2022-11-16 |
Carpobrotus edulis | https://www.inaturalist.org/observations/141403425 | Canelones | Uruguay | 2022-11-03 |
Carpobrotus edulis | https://www.inaturalist.org/observations/141124615 | Maldonado | Uruguay | 2022-10-28 |
Carpobrotus edulis | https://www.inaturalist.org/observations/139243688 | Maldonado | Uruguay | 2022-10-18 |
Carpobrotus edulis | https://www.inaturalist.org/observations/137897275 | Maldonado | Uruguay | 2022-10-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/136060363 | Canelones | Uruguay | 2021-08-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/135382489 | Maldonado | Uruguay | 2022-09-17 |
Carpobrotus edulis | https://www.inaturalist.org/observations/134293703 | Canelones | Uruguay | 2021-09-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/130445922 | Maldonado | Uruguay | 2022-08-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/130265533 | Maldonado | Uruguay | 2022-08-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/124734935 | Canelones | Uruguay | 2022-07-02 |
Carpobrotus edulis | https://www.inaturalist.org/observations/123951110 | Rocha | Uruguay | 2022-06-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/117894758 | Rocha | Uruguay | 2022-05-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/117883494 | Maldonado | Uruguay | 2022-05-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/116739467 | Rocha | Uruguay | 2022-05-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/116455224 | Maldonado | Uruguay | 2022-05-10 |
Carpobrotus edulis | https://www.inaturalist.org/observations/114675993 | Canelones | Uruguay | 2022-05-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/114303201 | Maldonado | Uruguay | 2022-04-30 |
Carpobrotus edulis | https://www.inaturalist.org/observations/111768060 | Canelones | Uruguay | 2022-04-16 |
Carpobrotus edulis | https://www.inaturalist.org/observations/111729043 | Canelones | Uruguay | 2022-04-16 |
Carpobrotus edulis | https://www.inaturalist.org/observations/111426459 | Canelones | Uruguay | 2022-04-14 |
Carpobrotus edulis | https://www.inaturalist.org/observations/111377839 | Maldonado | Uruguay | 2022-04-13 |
Carpobrotus edulis | https://www.inaturalist.org/observations/110244729 | Rocha | Uruguay | 2022-04-02 |
Carpobrotus edulis | https://www.inaturalist.org/observations/109923339 | Maldonado | Uruguay | 2021-07-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/109922922 | Maldonado | Uruguay | 2021-08-14 |
Carpobrotus edulis | https://www.inaturalist.org/observations/109749063 | Canelones | Uruguay | 2022-03-28 |
Carpobrotus edulis | https://www.inaturalist.org/observations/109574399 | Maldonado | Uruguay | 2019-12-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/107910734 | Canelones | Uruguay | 2022-03-04 |
Carpobrotus edulis | https://www.inaturalist.org/observations/107716646 | Rocha | Uruguay | 2022-03-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/107714165 | Rocha | Uruguay | 2022-03-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/107709942 | Rocha | Uruguay | 2022-03-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/107084263 | Canelones | Uruguay | 2022-02-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/107041694 | Rocha | Uruguay | 2022-02-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/106876384 | Maldonado | Uruguay | 2022-02-16 |
Carpobrotus edulis | https://www.inaturalist.org/observations/106270982 | Maldonado | Uruguay | 2022-02-06 |
Carpobrotus edulis | https://www.inaturalist.org/observations/105282457 | Maldonado | Uruguay | 2022-01-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/104813471 | Maldonado | Uruguay | 2022-01-11 |
Carpobrotus edulis | https://www.inaturalist.org/observations/104689416 | Maldonado | Uruguay | 2022-01-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/104598141 | Canelones | Uruguay | 2022-01-08 |
Carpobrotus edulis | https://www.inaturalist.org/observations/103899006 | Montevideo | Uruguay | 2021-12-29 |
Carpobrotus edulis | https://www.inaturalist.org/observations/103819528 | Rocha | Uruguay | 2021-12-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/103799453 | Maldonado | Uruguay | 2021-12-27 |
Carpobrotus edulis | https://www.inaturalist.org/observations/103243256 | Canelones | Uruguay | 2021-12-17 |
Carpobrotus edulis | https://www.inaturalist.org/observations/101727836 | Canelones | Uruguay | 2021-11-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99493818 | Canelones | Uruguay | 2021-10-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99417636 | Canelones | Uruguay | 2021-10-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99413776 | Canelones | Uruguay | 2021-10-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99412637 | Maldonado | Uruguay | 2021-10-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99406590 | Maldonado | Uruguay | 2021-10-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99403560 | Maldonado | Uruguay | 2021-10-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99368772 | Rocha | Uruguay | 2021-10-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/99090688 | Maldonado | Uruguay | 2021-10-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/98669192 | Canelones | Uruguay | 2021-10-16 |
Carpobrotus edulis | https://www.inaturalist.org/observations/72823752 | Canelones | Uruguay | 2021-03-30 |
Carpobrotus edulis | https://www.inaturalist.org/observations/71651011 | Canelones | Uruguay | 2021-03-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/70701312 | Maldonado | Uruguay | 2021-03-06 |
Carpobrotus edulis | https://www.inaturalist.org/observations/68463316 | Canelones | Uruguay | 2021-01-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/68328641 | Canelones | Uruguay | 2021-01-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/65441727 | Rocha | Uruguay | 2020-11-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/63814798 | Montevideo | Uruguay | 2020-10-30 |
Carpobrotus edulis | https://www.inaturalist.org/observations/63814772 | Montevideo | Uruguay | 2020-10-30 |
Carpobrotus edulis | https://www.inaturalist.org/observations/59671950 | Maldonado | Uruguay | 2020-09-15 |
Carpobrotus edulis | https://www.inaturalist.org/observations/59574883 | Maldonado | Uruguay | 2020-09-13 |
Carpobrotus edulis | https://www.inaturalist.org/observations/56907033 | Maldonado | Uruguay | 2011-11-13 |
Carpobrotus edulis | https://www.inaturalist.org/observations/55727449 | Canelones | Uruguay | 2020-07-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/54402909 | Maldonado | Uruguay | 2020-07-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/51015314 | Rocha | Uruguay | 2020-06-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/51014843 | Rocha | Uruguay | 2020-06-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/47125259 | Maldonado | Uruguay | 2020-05-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/47125100 | Maldonado | Uruguay | 2020-05-24 |
Carpobrotus edulis | https://www.inaturalist.org/observations/44843908 | Maldonado | Uruguay | 2020-05-03 |
Carpobrotus edulis | https://www.inaturalist.org/observations/44782720 | Maldonado | Uruguay | 2020-05-03 |
Carpobrotus edulis | https://www.inaturalist.org/observations/43691254 | Maldonado | Uruguay | 2020-04-26 |
Carpobrotus edulis | https://www.inaturalist.org/observations/42586824 | Maldonado | Uruguay | 2020-04-19 |
Carpobrotus edulis | https://www.inaturalist.org/observations/42015655 | Maldonado | Uruguay | 2019-11-08 |
Carpobrotus edulis | https://www.inaturalist.org/observations/41388354 | Maldonado | Uruguay | 2020-04-04 |
Carpobrotus edulis | https://www.inaturalist.org/observations/39662279 | Rocha | Uruguay | 2020-03-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/39661149 | Rocha | Uruguay | 2020-03-07 |
Carpobrotus edulis | https://www.inaturalist.org/observations/39611006 | Rocha | Uruguay | 2020-03-06 |
Carpobrotus edulis | https://www.inaturalist.org/observations/39423318 | Maldonado | Uruguay | 2020-03-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/38472597 | Rocha | Uruguay | 2020-02-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/38470807 | Rocha | Uruguay | 2020-02-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/38470787 | Rocha | Uruguay | 2020-02-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/38356037 | Maldonado | Uruguay | 2020-02-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/38173952 | Maldonado | Uruguay | 2020-01-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/38160041 | Maldonado | Uruguay | 2020-01-31 |
Carpobrotus edulis | https://www.inaturalist.org/observations/37854509 | Maldonado | Uruguay | 2020-01-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/37172036 | Maldonado | Uruguay | 2020-01-01 |
Carpobrotus edulis | https://www.inaturalist.org/observations/36943848 | Maldonado | Uruguay | 2019-12-25 |
Carpobrotus edulis | https://www.inaturalist.org/observations/36586034 | Rocha | Uruguay | 2019-12-12 |
Carpobrotus edulis | https://www.inaturalist.org/observations/35802536 | Canelones | Uruguay | 2019-11-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/35802535 | Canelones | Uruguay | 2019-11-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/35802532 | Canelones | Uruguay | 2019-11-09 |
Carpobrotus edulis | https://www.inaturalist.org/observations/22345368 | Montevideo | Uruguay | 2019-04-11 |
Carpobrotus edulis | https://www.inaturalist.org/observations/21828802 | Rocha | Uruguay | 2017-08-05 |
Carpobrotus edulis | https://www.inaturalist.org/observations/21523589 | Montevideo | Uruguay | 2018-10-22 |
Carpobrotus edulis | https://www.inaturalist.org/observations/20543070 | Maldonado | Uruguay | 2019-02-20 |
Carpobrotus edulis | https://www.inaturalist.org/observations/16641791 | Canelones | Uruguay | 2018-09-17 |
Carpobrotus edulis | https://www.inaturalist.org/observations/13104767 | Rocha | Uruguay | 2017-01-13 |