A walk around the Manly dam

R
rinat
mapview
Sydney
NSW
Author

José R. Ferrer-Paris

Published

May 23, 2025

Modified

August 30, 2025

Tools and Libraries

I will be using R with the following selection of libraries in this blog post:

library(rinat)
library(dplyr)
library(lubridate)
library(sf)
library(mapview)
library(leafpop)
  • rinat: Access iNaturalist data with R.

  • dplyr: A Grammar of Data Manipulation.

I use the library here to manage relative paths of the project:

here::i_am("regions/Manly-dam.qmd")
here() starts at /Users/z3529065/proyectos/CES/code-4-iNat

I save the downloaded inat data into this data folder at the root of the project folder:

if (!dir.exists(here::here("data")))
    dir.create(here::here("data"))
inat_obs_data <- here::here("data", "inat-obs.rds")

This will query all the observations from my iNaturalist user. I will save this to a data folder:

if (file.exists(inat_obs_data)) {
    user_obs <- readRDS(inat_obs_data)
} else {
    user_obs <- get_inat_obs_user("NeoMapas",maxresults = 5000) |> 
        mutate(dts=date(datetime), year=year(dts), month=month(dts))
    saveRDS(user_obs, inat_obs_data)
}

I can make this object spatially explicit using the function st_to_sf from package sf:

user_obs_xy <- st_as_sf(user_obs,coords=c("longitude","latitude"), crs=4326)

For this post, I am focusing on the observation made on the 9 March 2025:

manly_dam_obs <- filter(user_obs_xy, dts == "2025-03-09")

This is the number of observations for that day:

nrow(manly_dam_obs)
[1] 38

And this is the approximate number of species (or other taxa) included in those observaitons:

n_distinct(manly_dam_obs$species_guess)
[1] 34

A quick map with the default image of each observation can be made with mapview:

mapview(manly_dam_obs,
    map.types = c("OpenStreetMap.DE", "Esri.WorldImagery"),
    layer.name = c("A walk around the Manly Dam"),
    popup =
     popupImage(manly_dam_obs$image_url, src = "remote"))

That’s fantastic!

Session info

sessionInfo()
R version 4.5.0 (2025-04-11)
Platform: aarch64-apple-darwin20
Running under: macOS Sequoia 15.6.1

Matrix products: default
BLAS:   /Library/Frameworks/R.framework/Versions/4.5-arm64/Resources/lib/libRblas.0.dylib 
LAPACK: /Library/Frameworks/R.framework/Versions/4.5-arm64/Resources/lib/libRlapack.dylib;  LAPACK version 3.12.1

locale:
[1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8

time zone: Australia/Sydney
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] leafpop_0.1.0   mapview_2.11.2  sf_1.0-21       lubridate_1.9.4
[5] dplyr_1.1.4     rinat_0.1.9    

loaded via a namespace (and not attached):
 [1] generics_0.1.4          class_7.3-23            KernSmooth_2.23-26     
 [4] lattice_0.22-7          digest_0.6.37           magrittr_2.0.3         
 [7] evaluate_1.0.3          grid_4.5.0              timechange_0.3.0       
[10] RColorBrewer_1.1-3      fastmap_1.2.0           maps_3.4.3             
[13] rprojroot_2.0.4         plyr_1.8.9              jsonlite_2.0.0         
[16] e1071_1.7-16            DBI_1.2.3               httr_1.4.7             
[19] crosstalk_1.2.1         scales_1.4.0            brew_1.0-10            
[22] jquerylib_0.1.4         textshaping_1.0.1       codetools_0.2-20       
[25] cli_3.6.5               rlang_1.1.6             units_0.8-7            
[28] base64enc_0.1-3         yaml_2.3.10             tools_4.5.0            
[31] raster_3.6-32           uuid_1.2-1              colorspace_2.1-1       
[34] ggplot2_3.5.2           here_1.0.1              curl_6.4.0             
[37] vctrs_0.6.5             R6_2.6.1                png_0.1-8              
[40] stats4_4.5.0            proxy_0.4-27            lifecycle_1.0.4        
[43] classInt_0.4-11         leaflet_2.2.2           leaflet.providers_2.0.0
[46] htmlwidgets_1.6.4       pkgconfig_2.0.3         terra_1.8-60           
[49] pillar_1.11.0           gtable_0.3.6            glue_1.8.0             
[52] Rcpp_1.1.0              systemfonts_1.2.3       xfun_0.52              
[55] tibble_3.3.0            tidyselect_1.2.1        knitr_1.50             
[58] dichromat_2.0-0.1       farver_2.1.2            htmltools_0.5.8.1      
[61] svglite_2.2.1           leafem_0.2.4            rmarkdown_2.29         
[64] satellite_1.0.5         compiler_4.5.0          sp_2.2-0