Skip to main content
  • Methodological Developments in Landscape Ecology and Related Fields (M-J Fortin, Section Editor)
  • Open Access
  • Published:

Open-source Tools in R for Landscape Ecology

Abstract

Purpose of Review

Landscape ecology, the study of the complex interactions between landscapes and ecological processes, has hugely benefited from the increase in widely available open-source software in recent years. In particular, the R programming language provides a wealth of community developed tools for landscape ecology.

Recent Findings

In this paper, we examine existing packages for downloading, processing and visualisation of spatial data, as well as those specifically developed for spatial ecological analysis. Additionally, we outline the results of a survey of R users within the landscape ecology community.

Summary

We found that landscape ecologists are generally satisfied with the functionality available within R, and that as a community they are continually further developing the functionality available. Suggested future developments include improvement of computation performance; additional methods for landscape characterisation such as surface metrics; and advanced, accessible visualisation tools.

Introduction

Landscape ecology focuses on how ecological processes are influenced by the heterogeneous landscapes and how the ecological processes themselves influence the landscapes [1,2,3]. Because landscapes are defined as mosaics of different land covers, ecosystems, habitat types, or land uses [4,5,6], spatial context is essential and ecological processes can vary spatially [3]. Thus, landscape ecology emphasizes spatial patterns to a high degree [7] and consequently relies on software to preprocess, modify, model, analyze, and visualize these spatial patterns.

Software to manage and analyze data becomes increasingly important in modern scientific research [8] and many scientific studies would not have been possible without open-source software [9]. Open-source software includes all software that is released under licenses that allow for the use, modification and distribution of the software [10]. Open-source software development has many advantages, such as fast innovation, transparency, reliability, and longevity, mainly due to many diverse contributors [10, 11]. Additionally, open-source software facilitates (computational) reproducibility and allows a better understanding of the methodology of a study [9, 12]. Furthermore, open-source software allows other scientists to reuse code and not “reinvent the wheel” [9] by customizing existing software to their specific needs [13]. Importantly, though not strictly necessary by definition of open-source [13, 14], most open-source software is also free-of-cost, in contrast to often expensive proprietary software [11, 13, 14]. This democratizes scientific research. For more general overviews of open-source software for landscape ecology studies see [13,14,15,16].

One successful example of an open-source project is the R programming language, and its extensions called packages [17]. Packages allow to easily share code and make functionality and documentation available to users and by that extend the capability of the R programming language [18]. First released in 1995 [19], this programming language is among the most popular programming languages today, especially in ecology [20•]. Originally introduced as a statistical programming language, a large number of packages designed to analyze spatial data subsequently emerged for the R programming language [21, 22••]. Thus, the R programming language can be a very powerful tool. In addition to handling spatial data, other analytical tasks such as statistical modeling, creation of publication-ready figures, and even complete reports can be done within the R environment (Fig. 1).

Fig. 1
figure 1

Exemplary workflow of spatial data analyses for landscape ecology using the R programming language. For all major tasks, some example R packages are listed. For more packages related to the specific task, see Table 1

The growing body of R packages related to spatial data processing and analysis results in a high capability of this language for landscape ecology. The expanding CRAN Task Views (curated lists of packages related to a certain topic) document this: Analysis of Spatial Data [23] and Handling and Analyzing Spatio-Temporal Data [24] currently list about 300 packages in total. Since the task views are maintained manually by just a few people, the actual amount of R packages related to spatial data is most likely higher. The growing popularity of the R programming language for spatial data analysis and landscape ecology can also be seen with the increasing number of related textbooks [22••, 25,26,27]. A recent overview over the progress of R to handle spatial data can be found in [28••].

Even though many other open-source tools [29,30,31] and suitable programming languages (e.g., Python) for landscape ecology exist, in this review, we focus on software implemented in the R programming language. We acknowledge that there are reasons and circumstances to use other software tools and programming languages, however, a comprehensive discussion of pros and cons is outside the scope of this manuscript. Thus, in the first part of this article, we present an overview of existing R packages for landscape ecology and closely related fields (Table 1). We included only packages that were available on the official R package archive network CRAN at the time the manuscript was prepared. This ensures that all included packages were at least maintained to fulfill CRAN’s technical quality standards. In the second part, we present a survey in which we asked the community how they currently use the R programming language and to identify topics for which R packages are presently missing for landscape ecology.

Table 1 Overview of commonly used R packages for spatial data and landscape ecology. Packages are sorted by their major application task. The table only includes packages specifically designed for spatial data or landscape ecology

Existing Packages

Most R packages are developed and maintained by the community, which shows how open-source software development can facilitate innovation, reproducibility, and reuse of code. There are three major online platforms to host R packages and make them accessible to potential users: CRAN, GitHub, and Bioconductor. The last one focuses on tools for the analysis of genomic data; therefore, in this review we focus on only the former two.

CRAN (the Comprehensive R Archive Network) provides large visibility to the community, ease of installation, and a technical quality standard, including checks for common problems on all major operating systems [18]. GitHub hosts source code under version control, and allows users to install packages with one line of code using the remotes [32] package. Additionally, hosting a package on GitHub provides many useful features to collaborate and communicate between developers and users [18], or integrated unit testing (i.e., testing if functions return an expected value).

The guaranteed technical quality standard of CRAN requires more initial work for developers compared to GitHub. At the same time, it ensures for users that the package can be installed on their machine. Additionally, the technical quality standard of CRAN also facilitates reproducibility and reuse of code, as shown by many reverse dependencies of R packages, i.e., package x requires and uses code from package y. CRAN also provides archived versions of outdated or orphaned packages, thus ensuring long-term availability and reproducibility of code. That being said, most R packages can be found on both platforms, and many developers use GitHub for regular development and CRAN to publish stable releases of the packages. Furthermore, online communities like rOpenSci also provide a peer-review process for code quality. It is important to mention that while the package environment has many advantages, its highly dynamic characteristic with constant updates by the community might also be a threat to reproducibility since backward compatibility is not always ensured. Packages that deal with such issue include groundhog [33], packrat [34], or renv [35]. These packages facilitate reproducibility to a high degree by preserving the project environment, including specific package versions used for the analysis. For more information about R package development in general, see [18].

Spatial Data Representations

While base R has several built-in data structures, including vectors, matrices, data frames, and lists, yet it has no internal support for reading, processing, or visualizing spatial data. However, as discussed previously, one strength and core idea of the R programming language are its expandability by packages. Because there is a substantial interest in spatial data analysis, support for spatial data is now provided by many R packages ([22••], Table 1). Most spatial data belong to one of two data models, namely spatial raster and spatial vector model, and both data models have several implementations in the R language. Importantly, main R packages for spatial data use the external GDAL [36] and PROJ [37] libraries, which allow for reading and writing of hundreds of spatial data formats, and for coordinates transformation. Additionally, R allows for conversion between data models and specific implementations, which can be useful if given methods only exist for a particular data model or implementation.

In the raster data model, surfaces are divided into cells, where each cell stores a numeric value. The values could represent discrete phenomena, such as a class number of a land cover category, or continuous phenomena, such as elevation values. Currently, the most prominent package allowing for raster data representation is raster [38]. A raster successor, terra, aimed at the simpler interface and improved performance is being developed [39], however, it could take several years for this package to be adopted by other developers and users. Alternatively, the stars package can be used to read and process raster data focusing on spatial-temporal data cubes [40]. Additionally, there are packages that improve some basic raster operations in terms of computational performance or compatibility between raster and vector operations, such as fasterize [41], rasterDT [42], or exactextractr [43].

The vector data model consists of two main elements i) geometries (such as points, lines, polygons) and ii) attributes, where each geometry is connected to a row in the attribute table. In many cases, this data model allows a more realistic representation of landscape features, however, with higher computational cost [22••]. The sp package was the standard for vector data representation for more than ten years [44, 45]. As of 2020, more than 500 R packages directly depend on or import sp. However, sp is not actively developed anymore, and its recommended successor is the sf package [46]. Besides many advantages and strengths of the sf package in terms of spatial data handling, it also integrates into the widely used tidyverse packages [47]. The tidyverse is a collection of R packages developed for almost all major tasks of any data analysis project. Because all tidyverse packages follow the same philosophy how to structure data, one strength of the tidyverse is its high consistency of usage across its packages [47]. sf builds on the idea of “simple features,” a standard used to describe spatial geometries using points, lines (two connected points) and polygons (several connected points), and attributes connected to these geometries [27].

Spatial Data Download

Nowadays, spatial data at various scales is available from many online-accessible sources. A lot of this data are publicly available, either as a direct download or through an API connection, and several packages can use this to download the spatial data directly into a R session. Since publicly available data is becoming more prominent, so are R packages to access them. Packages include rnaturalearth [48] to access the Natural Earth database to download region and country data, the elevatr package to access raster elevation data [49], the rgbif package to access the Global Biodiversity Information Facility (GBIF) portal [50], the BIEN package [51] to access the Botanical Information and Ecology Network Database, the marmap to download bathymetry data from the ETOPO1 database [52], or the FedData package [53] to access the National Land Cover Database (NLCD) data for the USA. Furthermore, the getlandsat package [54] allows users to download Landsat 8 satellite data, the MODIS package [55] to download MODIS products, and sen2r [56] to download Sentinel-2 optical images. Also, the getData() function from the raster package allows users to download climatic and bioclimatic data from WorldClim v1.4. Additionally, the rgee package [57] gives access to an extensive catalog of data from Google Earth Engine, including climate data, land cover maps, and satellite imagery.

Spatial Data Processing

Coordinate reference systems (CRS) describe how spatial data are projected from the earth’s three-dimensional surface to a two-dimensional surface as required for spatial analysis or creating maps [22••, 27]. This is also referred to as spatial projection and is often the first barrier in spatial data analysis. It is not only required to have all of the used data in the same projection, but also to select a proper CRS. This is of importance because the projection into a two-dimensional surface unavoidably leads to distortion, and different CRS are optimized for different properties, regions of the world, and scales [22••, 45]. Coordinates in spatial data represent one of many coordinate reference systems. Two main groups of CRS, namely geographical and projected, exist, with each having many members. Using geographical CRS, positions are specified by latitude and longitude coordinates in degrees. However, most landscape ecology studies should utilize projected CRSs, which use some measurement units (e.g., meters). The selection of projected CRS should be based on the property of spatial data that needs to be kept intact (e.g., no distortion of areas, shapes, distances, or angles) and be appropriate for a given study area. A common way to refer to different CRS is to use codes developed by the European Petrol Survey Group (EPSG). Tools to find an appropriate CRS for a certain region can be found at https://spatialreference.org, https://epsg.org, or http://epsg.io. All packages from “Spatial Data Representations” have interfaces for coordinates transformations, allowing unification of spatial projections when the used data have different CRS.

Until 2020, spatial R objects stored information about their CRS using Proj4 string representations, and these strings could also be used for CRS transformations. However, the major changes in upstream software, namely PROJ6 and GDAL3, limited the capabilities of the Proj4 strings and switched to use a new representation called WKT2-2019 for storing the CRS. Thus, spatial objects saved with degraded Proj4 string representation to R file formats could be incorrectly read, and special attention should be given to check their correctness. Proj4 string representation is also not recommended to set or transform CRS and instead the previously introduced EPSG codes should be used. A more detailed explanation of the recent CRS changes can be found in [28••].

Another common spatial data processing task is required when the available data extends over a larger area than the study region. In this case, the pre-processing of spatial data should include vector clipping or raster cropping. Related to that, masking certain areas of the study region using spatial filters (e.g., water bodies, urban areas) can be required. Packages from “Spatial Data Representations” also allow for these operations. Additionally, they offer many other operations, such as merging or joining spatial data, extracting values from one dataset into another, raster resolution changes, or vector data simplifications. A comprehensive collection of methods to aggregate raster values to a coarser resolution can also be found in the grainchanger package [58]. Furthermore, landscapetools is a collection of various utility functions for the raster data model [59].

Finally, there are several tools for landscape ecology implemented in GIS software, such as r.li or r.pi for GRASS GIS [31, 60, 61], terrain analysis methods in SAGA GIS [62], or morphological operations for Google Earth Engine. It is possible to control several GIS software directly from R using dedicated packages, such as rgrass7 [63] for GRASS GIS, RSAGA [64] for SAGA GIS, and rgee [57] for Google Earth Engine. Direct access to these GIS software within R allows to create reproducible and sharable R scripts, even if functionality is currently not available in R.

Table 2

Creating Maps

Creating maps is essential when working with spatial data. Maps play an important role in checking the spatial and value-related quality of data, data exploration, and finally communicating results. R allows two major types of maps. Firstly, static maps in which the developer has full control over the presentation of the map and secondly, interactive maps in which the user can modify the map by, e.g., changing the displayed values. All packages listed in “Spatial Data Representations” have build-in methods for plotting spatial data using the generic plot() function (Fig. 2a). However, the generic functions are focused on quick visual inspection of the data (Fig. 2a), rather than creating complete maps as they do not directly support additional map elements (e.g., scale bar, north arrow) nor small multiples maps.

Fig. 2
figure 2

Comparison of different options to create maps of the total annual precipitation in Switzerland using (a) base plot, (b) ggplot2 package, and (c) tmap package. All three approaches result in similar-looking outputs, but their syntax and capabilities differ. All maps show the total annual precipitation of Switzerland. Data were downloaded with the raster package (precipitation data) and rnaturalearth package (country borders) package. The code to create the maps can be found in the Appendix

The popular plotting package ggplot2 (Fig. 2b) can also visualize spatial data and is build on a layered grammar of graphics, which allows to create maps by combining individual graphical elements (e.g., raster and vector elements) [65]. Additionally, there is an extension especially designed to plot spatial data named ggspatial, which provides additional map elements [66]. For more information about ggplot2 in general, see [65]. The tmap package provides a provides a coherent plotting system intended for drawing maps (Fig. 2c) [67]. This package operates in two modes, static and interactive, which means that the same code can be used to create static or interactive maps. Quick interactive visualization of spatial data can be done with the mapview package [68]. Both, tmap and mapview build upon the leaflet package and leaflet javascript library [69]. Static thematic maps, including proportional symbols, choropleth, or typology maps, can be created with the cartography package [70]. Further plotting methods for raster objects can be found in the rasterVis package [71]. A slightly different approach to visualizing spatial data is adapted by the rayshader package [72] that creates topographic 2D and 3D maps.

Ecological Analysis

Quantify Landscape Characteristics

One of the most fundamental steps of landscape ecology analyses is to describe and quantify landscape characteristics [2, 73]. For discrete land cover classes, the composition (number and abundance) and configuration (spatial arrangement) of the landscape are often described using landscape metrics [74,75,76,77•]. These metrics allow the comparison of different landscapes, quantification of temporal and spatial landscape changes and investigation of interactions between landscape characteristics and ecological processes [75].

The introduction of FRAGSTATS in 1995 heavily facilitated the use of landscape metrics software [77•–79] and the landscapemetrics package [80] allows to calculate the most widely used landscape metrics within the R environment.

More recently, surface metrics were suggested as an alternative to landscape metrics for continuous raster data [81]. The geodiv package [82] allows calculation of gradient surface metrics to facilitate continuous analysis of landscape features. Additionally, the belg package allows calculation of the Boltzmann entropy of a landscape gradient [83].

Most landscape metrics are represented by a single number depicting specific characteristics of a local landscape. Another possibility is to derive spatial signatures - a multi-value representation of landscape composition and configuration, such as a co-occurrence histogram [84]. Spatial signatures calculated for many landscapes can be compared using one of a set of existing distance measures (e.g., Euclidian, Jensen-Shannon, Jaccard). This enables several types of spatial analysis on categorical raster data, such as searching for similar landscapes, detecting changes between landscape patterns, and spatial clustering of landscapes based on their composition and configuration. All of the spatial signatures methods mentioned above are implemented in the motif package [84].

Spatial Statistics

Spatial statistics are complimentary to landscape metrics, and can be used to analyze patterns in continuous data (e.g., normalized difference vegetation index, disturbance intensity, topography). In landscape ecology, spatial statistics has three key uses: i) detecting and correcting for spatial autocorrelation; ii) quantifying and comparing landscape patterns; iii) interpolating data.

Point pattern analysis uses event-level data, such as locations of individuals, and links the spatial pattern to the ecological process. The spatstat package [85] contains functionality for point pattern analysis, including exploratory analysis; simulation of point process models; and modeling fitting, inference, and diagnostics. A comprehensive textbook covering both theoretical background as well as applied examples can be found here [86].

Distance-based methods allow for the detection and correction of spatial autocorrelation in data. It is key to do so as landscape data are highly spatially autocorrelated, and this non-independence can affect inferences from statistical modeling. The spdep package [45] has methods for quantifying multiple metrics of spatial autocorrelation and correcting these in a spatial autoregressive model. The rinla [87] and inlabru [88] packages also provide functionality for modeling of spatially structured data.

Finally, the spatial structure of continuous landscapes can be quantified and compared with geostatistical tools, such as variograms and correlograms. R packages geoR [89] and gstat [90] provide functionality for this type of analysis, as well as interpolation methods, known as (co-)kriging. Geostatistics also allows for spatial data simulations.

Species Distribution Modeling

Species distribution modeling (SDM) examines how landscape patterns (e.g., habitat suitability or resources availability) influence and determine the patterns of species’ distributions, mainly to infer ecological processes and predict future species’ distributions [91]. Originated in the 1970s, SDM has experienced numerous methodological advancement, and a large body of literature exists today [92, 93]. Additionally, textbooks introducing basic concepts of SDM in R exist [26, 94].

Because the used modeling approaches are diverse [26, 95, 96], there is also a large number of R packages used for SDMs. Popular approaches and packages include generalized linear models using, e.g., the stats [17] package; generalized additive models using, e.g., the mgcv [97] or lme4 [98] package; classification and regression trees (CART) using, e.g., the rpart [99], randomForest [100] or ranger [101] package or multivariate data analysis using, e.g., the ade4 [102] or vegan [103] package. Also, packages specifically designed for SDM exist, including the dismo [104], sdm [105], ecospat [106], biomod2 [107], PresenceAbsence [108], or zoon [109] packages. Additionally, packages such as ENMeval [110] provide functionality for model tuning and evaluation.

Related to SDMs, there is a growing number of R packages to analyze data from tracked animals, to study their movement characteristics, space use, and interaction with other animals and the environment. These analyses often use results of landscape ecological analyses as predictor variables to explain variation in space use [111], behavioral states [112], or habitat selection [113]. Widely used R packages include ctmm [114] and adehabitatHR [115] for home-range estimation, moveHMM [116] for the classification of behavioral states, and amt [117] for habitat selection. A recent and very comprehensive overview of R packages for the analysis of animal movement data is given by [118].

Connectivity

Connectivity is one of the core elements of landscape structure [119] and thus one of the core concepts of landscape ecology [3]. Landscape connectivity describes how landscape characteristics facilitate or hinder the movement of species [120] or other aspects of mobility, such as dispersal, gene or nutrient flow [3]. While structural connectivity focuses only on landscape characteristics (e.g., movement corridors, barriers), functional connectivity also includes behavior characteristics of the species such as habitat associations and dispersal distances [3, 120]. Given its broad concept, many different measures of connectivity exist [121]. At the patch level, structural connectivity can be measured using nearest-neighbor distances or characterizations of the patch neighborhood (e.g., amount of suitable habitat) [3, 121]. Such measures are provided within the landscapemetrics package (see “Quantify Landscape Characteristics”). Furthermore, the lconnect package [122] and Makurhini package [123] provide several landscape connectivity metrics. Another way to describe connectivity is based on graph theory with the advantage that functional connectivity can also be included [121]. In graph theory [124], landscapes are described by nodes (i.e., habitat patches) connected by and functional connections called links (or edges) [124]. The grainscape package [125] provides a tool to model connectivity based on spatially explicit networks. More generally, the igraph package [126] provides functionality for graph theoretic analyses. Resistance surfaces and least-cost paths are other tools to model functional connectivity which include attributes of the matrix. The resistance surface describes the effects of facilitating or hindering the landscape’s characteristics for an organism moving within it [127]. Least-cost paths can be calculated using the gdistance package [128]. Absorbing Markov chains quantify landscape connectivity as the combination of movement and mortality based on the landscape characteristics [129], and is provided by the recently published samc package [130].

Landscape Genetics

Landscape genetics investigates how characteristics of landscapes interact with gene flow, genetic drift, and selection [131]. Such insights improve our understanding of metapopulation dynamics, speciation, species’ distributions, and conservation [132]. By explicitly including landscape characteristics, landscape genetics provides a more detailed analysis than more abstract concepts (e.g., metapopulation genetics) [133]. As a result of its interdisciplinarity, landscape genetics draws together methods from multiple fields, including landscape ecology, spatial statistics, geography, and population genetics [132].

Since describing connectivity between two locations is one of the fundamental steps of landscape genetics, all packages useful for connectivity (see “Connectivity”) are also important for landscape genetics. Further functionality for landscape genetics such as quantifying and analyzing population genetic structure, and hierarchical decomposition analysis can be found in the graphs4lg [134], PopGenReport [135, 136], HierDpart [137], or GeNetIt [138] packages.

Neutral Landscape Models

Neutral landscape models are used to create structured landscapes in the absence of specific ecological and landscape processes as null models against which hypotheses including specific ecological and landscape processes can be tested statistically [139, 140]. Because neutral landscape models are not based on ecological and landscape processes, many different generic algorithms to create landscapes can be found across several R packages. A comprehensive collection of algorithms to simulate neutral landscape models specifically designed for landscape ecology can be found in the NLMR package [59]. Furthermore, the RandomFields package [141] allows to simulate Gaussian fields, which could be used as neutral landscape models.

Survey of R Usage by Landscape Ecology Community

To better understand how the landscape ecology community uses R, we conducted a short survey using mailing lists and social media to reach the community. Thus, the survey was not necessarily representative for all skill levels of R users and results are most likely biased towards more advanced users. Also, the survey did not include any personal questions, such as age or country of residence, which might affect the representation of the survey. All raw data and scripts to analyze the data can be found at https://github.com/r-spatialecology/Hesselbarth_et_al_CLER.

In total, the survey was answered by 109 participants, of which the majority were either “PhD students” (33%), followed by “Post-Docs” (26.6%) and “Professors” (14.7%). Other, less frequent answers were “Data scientists”, “None of the above”, “Government employees”, “Master’s degree student”, and “Bachelor’s degree student” (in decreasing order).

Most people use R either “daily” (53.2%) or a “few times a week” (36.7%). Almost half of all participants described themselves as “advanced” users (46.8%), while 40.4% described themselves as “intermediate” users. Related to this, about half of the participants either implemented their own package (21.1%) or plan to do so in the future (22%) and most of these packages are hosted on GitHub and/or CRAN.

We asked the participants to select which terms describe their research topics the best, and options that were selected by more than 10% of participants included “biodiversity”, followed by “land use management”, “landscape connectivity”, and “nature conservation” (Fig. 3a).

Fig. 3
figure 3

Results of the online survey about open-source software tools in R for landscape ecology. Results include (a) which terms describe major research topics the best, (b) the most important workflow task, (c) the most used R packages and (d) the overall usefulness or R for landscape ecology. The “others” category includes all answers with less than five total mentions

Next, we were interested in the most important tasks to the workflow of the participants. Not surprisingly, “(pre-) processing of data”, “spatial statistics”, and “creating maps” were the most selected options (Fig. 3b). The available options seemed to describe the most important task to the workflow quite well since only very few participants selected the “others” option (all options with less than five total answers were classified as “others”).

More people use the raster data model (72.5%) in comparison to the vector data model (27.5%). This was also represented in the most used R packages (Fig. 3c). When asked for the three most used packages, participants of the survey listed 93 packages in total. The raster package was mentioned the most, followed by the sf package. Both packages are designed for basic and advanced data handling and processing of raster and vector data, respectively, representing the results of Fig. 3c. Nevertheless, the large availability and usage of different R packages across the community can be seen in the large “others” option (packages mentioned by less than 5 participants; 35.9%).

Lastly, when asked how useful R is currently for landscape ecology, the vast majority of participants answered with either “very useful” or “useful” (summarized 90.8%) and only very few participants evaluated R as “intermediate”, “not useful” or “not useful at all” (summarized 9.2%; Fig. 3d).

The survey also included a section in which participants could list methods and tools currently missing in R and answers to this question were very diverse. Overall, 23.9% of the participants reported that currently no packages and functionality are missing for them or they lack the overview to answer the question. There were three most common topics across the answers of the participants. Firstly, many participants (12.8%) wished for a better computational performance of R in terms of speed and required RAM, especially for larger data sets. Secondly, participants are missing specific approaches to quantify landscape characteristics (such as surface metrics), or are wishing for an improvement of currently available approaches to quantify landscape characteristics (9.2%). Thirdly, many participants (8.3%) are currently missing advanced and easy-to-apply methods to create high-quality maps or other visualization-related functionality.

Conclusions

Since its first introduction in 1995, R has come a long way from an exclusively statistical programming language to a powerful landscape ecology tool. Today, many R packages, mainly developed by the community itself, provide a vast collection of functions and algorithms aimed at spatial data handling and analysis. The highly dynamic development of R packages for landscape ecology also shows the strength of open-source software with its high innovation, transparency, reliability, and longevity. However, since landscape ecology constantly develops and improves, consequently also the R programming language and its packages are under constant change to adapt to these new developments.

A comprehensive collection of R software packages exists to handle the most common tasks of landscape ecology. Because it is possible to import, modify, analyze, and visualize spatial data all in the same scripted programming environment, R allows for transparent and reproducible workflows. Scripts including all analysis steps and parameter settings can easily be shared, thus the script-based characteristic of the R programming language allows the easy distribution and reproduction of analysis across all major operation systems (e.g., Windows, macOS, Linux), as demonstrated by the R script in the Appendix. This is a big advantage over point-and-click software interfaces where analysis steps and parameter settings can only be described but not shared, and furthermore, are often only available for certain operating systems. This also allows users to easily interchange, modify, or adapt methods from other related and unrelated fields.

The survey revealed that the landscape ecology community is overall satisfied with the capabilities of the R programming language for landscape ecology. Furthermore, the survey showed that many members of the landscape ecology community actively develop R packages themselves, demonstrating that tools are constantly added and updated.

Landscape ecology combines many different research topics and methodological approaches, and most of them heavily rely on spatial data. While the R programming language is generally well suited to handle, analyze and visualize spatial data, the increasing availability of large data sets also leads to the challenges of increased computational demands, in terms of computational time as well as memory requirements, the R programming language has to face. Some packages discussed herein, such as raster and terra, already provide solutions by processing data in chunks small enough to be stored in RAM memory. Furthermore, parallel processing, including the use of high performance clusters, is also provided by several R packages. While this is outside the scope of this manuscript, further resources about parallel processing in R can be found here [142,143,144]. Furthermore, as the individual fields collected under the umbrella of landscape ecology develop, so will the need for R packages related to those fields. Nevertheless, as the development of R packages over the past years clearly demonstrated, the landscape ecology community is ready to face these challenges.

References

Papers of particular interest, published recently, have been highlighted as: • Of importance •• Of major importance

  1. Turner M. Landscape ecology: The effect of pattern on process. Annu Rev Ecol Syst 1989;20(1): 171. https://doi.org/10.1146/annurev.es.20.110189.001131.

    Article  Google Scholar 

  2. Turner M. Landscape ecology: What is the state of the science?. Ann Rev Ecol Evol Syst 2005; 36(1):319. https://doi.org/10.1146/annurev.ecolsys.36.102003.152614.

    Article  Google Scholar 

  3. With K. Essentials of landscape ecology, 1st ed. Oxford: Oxford University Press; 2019.

    Book  Google Scholar 

  4. Forman R, Godron M. Landscape ecology. New York: Wiley; 1986.

    Google Scholar 

  5. Forman R. Land mosaics: The ecology of landscapes and regions. Cambridge: Cambridge University Press; 1995.

    Book  Google Scholar 

  6. Wiens JA. Landscape mosaics and ecological theory. Mosaic landscapes and ecological processes. In: Hansson L, Fahrig L, and Merriam G, editors. London, UK: Chapman and Hall; 1995. p. 1–26.

  7. Risser P, Karr J, Forman R. Landscape ecology: Directions and approaches. Illinois Natural History Survery Special Publication 1984;2:7.

    Google Scholar 

  8. Wilson G, Aruliah D, Brown C, Chue Hong N, Davis M, Guy R, Haddock S, Huff K, Mitchell I, Plumbley M, Waugh B, White E, Wilson P. Best practices for scientific computing. PLoS Biol 2014;12(1):e1001745. https://doi.org/10.1371/journal.pbio.1001745.

    PubMed  PubMed Central  Article  Google Scholar 

  9. Prlić A, Procter J. Ten simple rules for the open development of scientific software. PLoS Comput Biol 2012;8(12):e1002802. https://doi.org/10.1371/journal.pcbi.1002802.

    PubMed  PubMed Central  Article  CAS  Google Scholar 

  10. St. Laurent A. 2008. Understanding open source and free software licensing. O’Reilly.

  11. von Krogh G, von Hippel E. The promise of research on open source software. Manag Sci 2006;52(7):975–983. https://doi.org/10.1287/mnsc.1060.0560.

    Article  Google Scholar 

  12. Powers S, Hampton S. Open science, reproducibility, and transparency in ecology. Ecol Appl 2019;29(1):e01822. https://doi.org/10.1002/eap.1822.

    PubMed  Article  Google Scholar 

  13. Steiniger S, Bocher E. An overview on current free and open source desktop gis developments. Int J Geogr Inf Sci 2009 ;23(10):1345. https://doi.org/10.1080/13658810802634956.

    Article  Google Scholar 

  14. Steiniger S, Hay G. Free and open source geographic information tools for landscape ecology. Ecol Inform 2009;4(4):183. https://doi.org/10.1016/j.ecoinf.2009.07.004.

    Article  Google Scholar 

  15. Jolma A, Ames DP, Horning N, Mitasova H, Neteler M, Racicot A, Sutton T. Chapter ten: Free and open source geospatial tools for environmental modeling and management. Developments in Integr Envir Assess 2008;3:163. https://doi.org/10.1016/S1574-101X(08)00610-8.

    Article  Google Scholar 

  16. István S. 2012. Comparison of the most popular open-source gis software in the field of landscape ecology. Landscape & Environment. 6(2) 76–92.

  17. R Core Team. 2019. R: A language and environment for statistical computing. www.r-project.org.

  18. Wickham H. 2015. R packages: Organize, test, document, and share your code. O’Reilly.

  19. Smith D. 2016. Over 16 years of r project history. https://blog.revolutionanalytics.com/2016/03/16-years-of-r-history.html.

  20. • Lai J, Lortie C, Muenchen R, Yang J, Ma K. 2019. Evaluating the popularity of r in ecology. Ecosphere. 10(1). https://doi.org/10.1002/ecs2.2567.

  21. Bivand R. Implementing spatial data analysis software tools in r. Geogr Anal 2006;38(1):23. https://doi.org/10.1111/j.0016-7363.2005.00672.x.

    Article  Google Scholar 

  22. •• Lovelace R, Nowosad J, Münchow J. 2019. Geocomputation with R, 1st edn. (Chapman and Hall/CRC Press).

  23. Bivand R. 2019. Analysis of spatial data. https://CRAN.R-project.org/view=Spatial.

  24. Pebesma E. 2020. Handling and analyzing spatio-temporal data. https://CRAN.R-project.org/view=SpatioTemporal.

  25. Wegmann M, Leutner B, Dech S, (eds). 2016. Remote sensing and gis for ecologists: using open source software, data in the wild. Exeter: Pelagic Publishing.

  26. Fletcher R, Fortin MJ. 2018. Spatial ecology and conservation modeling. Applications with r. Springer International Publishing.

  27. Pebesma E, Bivand R. 2019. Spatial data science. https://www.r-spatial.org/book.

  28. •• Bivand R. 2020. Progress in the r ecosystem for representing and handling spatial data. J Geogr Syst. https://doi.org/10.1007/s10109-020-00336-0.

  29. QGIS Development Team. 2016; www.qgis.org.

  30. GRASS Development Team. Geographic resources analysis support system (grass). 2017; http://grass.osgeo.org.

  31. Porta C, Spano L, Pontedera F. 2017. r.li - toolset for multiscale analysis of landscape structure. https://grass.osgeo.org/grass74/manuals/r.li.html.

  32. Hester J, Csárdi G, Wickham H, Chang W, Morgan M, Tenenbaum D. 2020. remotes: R package installation from remote repositories, including ’github’. r package version 2.2.0. https://CRAN.R-project.org/package=remotes.

  33. Simonsohn U, Gruson H. 2021. groundhog: Reproducible scripts via version-specific package loading. r package version 1.1.0. https://CRAN.R-project.org/package=groundhog.

  34. Ushey K, McPherson J, Cheng J, Atkins A, Allaire J. 2018. packrat: A dependency management system for projects and their r package dependencies. r package version 0.5.0. https://CRAN.R-project.org/package=packrat.

  35. Ushey K. 2020. renv: Project environments. r package version 0.12.3. https://CRAN.R-project.org/package=renv.

  36. GDAL/OGR contributors. 2020. GDAL/OGR geospatial data abstraction software library. Open Source Geospatial Foundation. https://gdal.org.

  37. PROJ contributors. 2021. PROJ coordinate transformation software library. Open Source Geospatial Foundation. https://proj.org/.

  38. Hijmans R. 2019. raster: Geographic data analysis and modeling. r package version 2.9-5. https://cran.r-project.org/package=raster.

  39. Hijmans R. 2021. terra: Spatial data analysis. r package version 1.0-10. https://CRAN.R-project.org/package=terra.

  40. Pebesma EJ. 2019. stars: Scalable, spatiotemporal tidy arrays for r. r package version 0.3-1. https://cran.r-project.org/package=stars.

  41. Ross N. 2020. fasterize: Fast polygon to raster conversion. r package version 1.0.3. https://CRAN.R-project.org/package=fasterize.

  42. O’Brien J. 2020. rasterdt: Fast raster summary and manipulation. r package version 0.3.1. https://CRAN.R-project.org/package=rasterDT.

  43. Baston D. 2020. exactextractr: Fast extraction from raster datasets using polygons. r package version 0.5.1. https://CRAN.R-project.org/package=exactextractr.

  44. Pebesma EJ, Bivand RS. Classes and methods for spatial data in r. R News 2005;5(2):9.

    Google Scholar 

  45. Bivand R, Pebesma E, Gómez-Rubio V. 2013. Applied spatial data analysis with R, 2 (Use R!) Springer.

  46. Pebesma EJ. 2018. sf: Simple features for r. https://cran.r-project.org/package=sf.

  47. Wickham H, Averick M, Bryan J, Chang W, McGowan L, François R, Grolemund G, Hayes A, Henry L, Hester J, Kuhn M, Pedersen T, Miller E, Bache S, Müller K, Ooms J, Robinson D, Seidel D, Spinu V, Takahashi K, Vaughan D, Wilke C, Woo K, Yutani H. Welcome to the tidyverse. J Open Source Softw 2019;4(43):1686. https://doi.org/10.21105/joss.01686.

    Article  Google Scholar 

  48. South A. 2017. rnaturalearth: World map data from natural earth. r package version 0.1.0. https://CRAN.R-project.org/package=rnaturalearthhttps://CRAN.R-project.org/package=rnaturalearth.

  49. Hollister J, Shah T, Robitaille AL, Beck MW, Johnson M. 2020. elevatr: Access elevation data from various apis. r package version 0.3.1. https://github.com/usepa/elevatr/.

  50. Chamberlain S, Boettiger C. 2017. R python, and ruby clients for gbif species occurrence data. PeerJ Preprints. https://doi.org/10.7287/peerj.preprints.3304v1.

  51. Maitner B. 2020. Bien: Tools for accessing the botanical information and ecology network database. r package version 1.2.4. https://CRAN.R-project.org/package=BIEN.

  52. Pante E, Simon-Bouhet B. marmap: A package for importing, plotting and analyzing bathymetric and topographic data in r. PLoS ONE 2013;8(9):e73051. https://doi.org/10.1371/journal.pone.0073051.

    CAS  PubMed  PubMed Central  Article  Google Scholar 

  53. Bocinsky R. 2019. Feddata: Functions to automate downloading geospatial data available from several federated data sources. r package version 2.5.7. https://CRAN.R-project.org/package=FedData.

  54. Chamberlain S. 2018. getlandsat: Get landsat 8 data from amazon public data sets. r package version 0.2.0. https://CRAN.R-project.org/package=getlandsat.

  55. Mattiuzzi M. 2020. Modis: Acquisition and processing of modis products. r package version 1.2.3. https://CRAN.R-project.org/package=MODIS.

  56. Ranghetti L, Boschetti M, Nutini F, Busetto L. “sen2r”: An r toolbox for automatically downloading and preprocessing sentinel-2 satellite data. Comput Geosci 2020;139:104473. https://doi.org/10.1016/j.cageo.2020.104473.

    Article  Google Scholar 

  57. Aybar C, Wu Q, Bautista L, Yali R, Barja A. rgee: An r package for interacting with google earth engine. J Open Source Softw 2020;5(51):2272. https://doi.org/10.21105/joss.02272.

    Article  Google Scholar 

  58. Graham L, Spake R, Gillings S, Watts K, Eigenbrod F. Incorporating fine-scale environmental heterogeneity into broad-extent models. Methods Ecol Evol 2019;10(6):767. https://doi.org/10.1111/2041-210X.13177.

    PubMed  PubMed Central  Article  Google Scholar 

  59. Sciaini M, Fritsch M, Scherer C, Simpkins C. Nlmr and landscapetools: An integrated environment for simulating and modifying neutral landscape models in r. Methods Ecol Evol 2018;9(11): 2240. https://doi.org/10.1111/2041-210X.13076.

    Article  Google Scholar 

  60. Wegmann M, Leutner B, Metz M, Neteler M, Dech S, Rocchini D. r.pi: A grass gis package for semi-automatic spatial pattern analysis of remotely sensed land cover data. Methods Ecol Evol 2018;9 (1):191. https://doi.org/10.1111/2041-210X.12827 .

    Article  Google Scholar 

  61. Neteler M, Bowman M, Landa M, Metz M. Grass gis: A multi-purpose open source gis. Environ Model Softw 2012;31:124. https://doi.org/10.1016/j.envsoft.2011.11.014.

    Article  Google Scholar 

  62. Conrad O, Bechtel B, Bock M, Dietrich H, Fischer E, Gerlitz L, Wehberg J, Wichmann V, Böhner J. System for automated geoscientific analyses (saga) v2.1.4. Geosci Model Dev 2015;8 (7):1991. https://doi.org/10.5194/gmd-8-1991-2015.

    Article  Google Scholar 

  63. Bivand R. 2021. rgrass7: Interface between grass 7 geographical information system and r. r package version 0.2-5. https://CRAN.R-project.org/package=rgrass7.

  64. Brenning A, Bangs D, Becker M. 2018. Rsaga: Saga geoprocessing and terrain analysis. r package version 1.3.0. https://CRAN.R-project.org/package=RSAGA.

  65. Wickham H. 2016. ggplot2: Elegant graphics for data analysis (Springer). http://ggplot2.org.

  66. Dunnington D. 2020. ggspatial: Spatial data framework for ggplot2. r package version 1.1.4. https://CRAN.R-project.org/package=ggspatial.

  67. Tennekes M. 2018. tmap: Thematic maps in r. J Stat Softw 84(6). https://doi.org/10.18637/jss.v084.i06.

  68. Appelhans T, Detsch F, Reudenbach C, Woellauer S. 2020. mapview: Interactive viewing of spatial data in r. r package version 2.9.0. https://CRAN.R-project.org/package=mapview.

  69. Cheng J, Karambelkar B, Xie Y. 2021. leaflet: Create interactive web maps with the javascript ’leaflet’ library. r package version 2.0.4.1. https://CRAN.R-project.org/package=leaflet.

  70. Giraud T, Lambert N. cartography: Create and integrate maps in your r workflow. J Open Source Softw 2016;1(4):54. https://doi.org/10.21105/joss.00054.

    Article  Google Scholar 

  71. Lamigueiro O, Hijmans R. 2020. rastervis: Visualization methods for raster data. r package version 0.49. https://CRAN.R-project.org/package=rasterVis.

  72. Morgen-Wall T. 2020. rayshader: Create maps and visualize data in 2d and 3d. r package version 0.19.2. https://CRAN.R-project.org/package=rayshader.

  73. Lausch A, Blaschke T, Haase D, Herzog F, Syrbe RU, Tischendorf L, Walz U. Understanding and quantifying landscape structure - a review on relevant process characteristics, data models and landscape metrics. Ecol Model 2015;295:31. https://doi.org/10.1016/j.ecolmodel.2014.08.018.

    Article  Google Scholar 

  74. Gustafson E. Quantifying landscape spatial pattern: What is the state of the art?. Ecosystems 1998;1:143. https://doi.org/10.1007/s100219900011.

    Article  Google Scholar 

  75. Uuemaa E, Antrop M, Marja R, Roosaare J, Mander U. Landscape metrics and indices: An overview of their use in landscape research. Liv Rev Landscape Res 2009;3:1. https://doi.org/10.12942/lrlr-2009-1.

    Google Scholar 

  76. Uuemaa E, Mander U, Marja R. Trends in the use of landscape spatial metrics as landscape indicators: A review. Ecol Indic 2013;28:100. https://doi.org/10.1016/j.ecolind.2012.07.018.

    Article  Google Scholar 

  77. • Gustafson E. How has the state-of-the-art for quantification of landscape pattern advanced in the twenty-first century?. Landsc Ecol 2019;34:1.

    Article  Google Scholar 

  78. McGarigal K, Cushman S, Ene E. 2012. Fragstats v4: Spatial pattern analysis program for categorical and continuous maps. computer software program produced by the authors at the university of massachusetts, amherst. http://www.umass.edu/landeco/research/fragstats/fragstats.html.

  79. Kupfer J. Landscape ecology and biogeography: Rethinking landscape metrics in a post-fragstats landscape. Prog Phys Geogr 2012;36(3):400. https://doi.org/10.1177/0309133312439594.

    Article  Google Scholar 

  80. Hesselbarth M, Sciaini M, With K, Wiegand K, Nowosad J. landscapemetrics: An open-source r tool to calculate landscape metrics. Ecography 2019;42(10):1648. https://doi.org/10.1111/ecog.04617.

    Article  Google Scholar 

  81. McGarigal K, Tagil S, Cushman S. Surface metrics: An alternative to patch metrics for the quantification of landscape structure. Landsc Ecol 2009;24(3):433. https://doi.org/10.1007/s10980-009-9327-y.

    Article  Google Scholar 

  82. Smith A, Zarnetske P, Dahlin K, Wilson A, Latimer A. 2020. geodiv: Methods for calculating gradient surface metrics. r package version 0.2.0. https://CRAN.R-project.org/package=geodiv.

  83. Nowosad J, Gao P. belg: A tool for calculating boltzmann entropy of landscape gradients. Entropy 2020;22(9):937. https://doi.org/10.3390/e22090937.

    CAS  PubMed Central  Article  Google Scholar 

  84. Nowosad J. motif: An open-source r tool for pattern-based spatial analysis. Landsc Ecol 2021; 36(1):29. https://doi.org/10.1007/s10980-020-01135-0.

    Article  Google Scholar 

  85. Baddeley A, Turner R. spatstat: An r package for analyzing spatial point patterns. J Stat Softw 2005;12(6):1. https://doi.org/10.18637/jss.v012.i06.

    Article  Google Scholar 

  86. Baddeley A, Rubak E, Turner R. 2015. Spatial point patterns: Methodology and applications with r. Chapman and Hall/CRC Press.

  87. Rue H, Martino S, Chopin N. Approximate bayesian inference for latent gaussian models by using integrated nested laplace approximations. J R Stat Soc: Ser B (Stat Methodol) 2009;71(2):319. https://doi.org/10.1111/j.1467-9868.2008.00700.x.

    Article  Google Scholar 

  88. Bachl F, Lindgren F, Borchers D, Illian J. inlabru: an r package for bayesian spatial modelling from ecological survey data. Methods Ecol Evol 2019;10(6):760. https://doi.org/10.1111/2041-210X.13168.

    Article  Google Scholar 

  89. Diggle P, Ribeiro P. Model-based geostatistics. Springer Series in Statistics. New York: Springer; 2007.

    Book  Google Scholar 

  90. Pebesma E. Multivariable geostatistics in s: the gstat package. Comput Geosci 2004;30(7):683. https://doi.org/10.1016/j.cageo.2004.03.012.

    Article  Google Scholar 

  91. Wiersma Y, Huettmann F, Drew C. Landscape modeling of species and their habitats: History, uncertainty, and complexity. Predictive Species and Habitat Modeling in Landscape Ecology. In: Drew C, Wiersma Y, and Huettmann F, editors. New York, USA: Springer New York; 2011. p. 1–6, https://doi.org/10.1007/978-1-4419-7390-0_1.

  92. Zimmermann N, Edwards C, Graham C, Pearman P, Svenning JC. New trends in species distribution modelling. Ecography 2010;33(6):985. https://doi.org/10.1111/j.1600-0587.2010.06953.x.

    Article  Google Scholar 

  93. Norberg A, Abrego N, Blanchet F, Adler F, Anderson B, Anttila J, Araújo M, Dallas T, Dunson D, Elith J, Foster S, Fox R, Franklin J, Godsoe W, Guisan A, O’Hara B, Hill N, Holt R, Hui F, Husby M, Kå lås J, Lehikoinen A, Luoto M, Mod H, Newell G, Renner I, Roslin T, Soininen J, Thuiller W, Vanhatalo J, Warton D, White M, Zimmermann N, Gravel D, Ovaskainen O. 2019. A comprehensive evaluation of predictive performance of 33 species distribution models at species and community levels. Ecol Monogr 89(2):e01370 https://doi.org/10.1002/ecm.1370.

  94. Guisan A, Thuiller W, Zimmermann N. Habitat suitability and distribution models: With applications in r, 1st edn. Cambridge: Cambridge University Press; 2017.

    Book  Google Scholar 

  95. Hooten M. The state of spatial and spatio-temporal statistical modeling. Predictive Species and Habitat Modeling in Landscape Ecology. In: Drew C, Wiersma Y, and Huettmann F, editors. New York, USA: Springer New York; 2011. p. 29–41. https://doi.org/10.1007/978-1-4419-7390-0_3.

  96. Kerr J, Kulkarni M, Algar A. Integrating theory and predictive modeling for conservation research. Predictive Species and Habitat Modeling in Landscape Ecology. In: Drew C, Wiersma Y, and Huettmann F, editors. New York, USA: Springer New York; 2011. p. 9–28, https://doi.org/10.1007/978-1-4419-7390-0_2.

  97. Wood S. 2017. Generalized additive models: An introduction with R. 2nd edn. (Chapman & Hall/CRC).

  98. Bates D, Mächler M, Bolker B, Walker S. 2015. Fitting linear mixed-effects models using lme4. J Stat Softw 67(1):1–48. https://doi.org/10.18637/jss.v067.i01.

  99. Therneau T, Atkinson B. 2019. rpart: Recursive partitioning and regression trees. r package version 4.1-15. https://CRAN.R-project.org/package=rpart.

  100. Liaw A, Wiener M. Classification and regression by randomforest. R News 2002;2(3):18. https://CRAN.R-project.org/doc/Rnews/.

    Google Scholar 

  101. Wright M, Ziegler A. 2017. ranger: A fast implementation of random forests for high dimensional data in c++ and r. J Stat Softw, 77(1):1–17. https://doi.org/10.18637/jss.v077.i01.

  102. Dray S, Dufour AB. 2007. The ade4 package: Implementing the duality diagram for ecologists. J Stat Softw 22(4):1–20. https://doi.org/10.18637/jss.v022.i04.

  103. Oksanen J, Blanchet F, Friendly M, Kindt R, Legendre P, McGlinn D, Minchin P, O’Hara R, Simpson G, Solymos P, Stevens M, Szoecs E, Wagner H. 2019. vegan: Community ecology package. r package version 2.5-6. https://CRAN.R-project.org/package=vegan.

  104. Hijmans R, Phillips S, Leathwick J, Elith J. 2017. dismo: Species distribution modeling. r package version 1.1-4. https://CRAN.R-project.org/package=dismo.

  105. Naimi B, Araújo M. sdm: A reproducible and extensible r platform for species distribution modelling. Ecography 2016;39(4):368. https://doi.org/10.1111/ecog.01881.

    Article  Google Scholar 

  106. Broennimann O, Di Cola V, Guisan A. 2020. ecospat: Spatial ecology miscellaneous methods. r package version 3.1. https://CRAN.R-project.org/package=ecospat.

  107. Thuiller W, Georges D, Engler R, Breiner F. 2020. biomod2: Ensemble platform for species distribution modeling. r package version 3.4.6. https://CRAN.R-project.org/package=biomod2.

  108. Freeman E, Moisen G. 2008. Presenceabsence: An r package for presence absence analysis. J Stat Softw 23(11):1–31. https://doi.org/10.18637/jss.v023.i11.

  109. Golding N, August T, Lucas T, Gavaghan D, Loon E, McInerny G. The zoon package for reproducible and shareable species distribution modelling. Methods Ecol Evol 2018;9(2):260. https://doi.org/10.1111/2041-210X.12858.

    Article  Google Scholar 

  110. Muscarella R, Galante P, Soley-Guardia M, Boria R, Kass J, Uriarte M, Anderson R. Enmeval: An r package for conducting spatially independent evaluations and estimating optimal model complexity for maxent ecological niche models. Methods Ecol Evol 2014;5(11):1198. https://doi.org/10.1111/2041-210X.12261.

    Article  Google Scholar 

  111. Signer J, Balkenhol N, Ditmer M, Fieberg J. Does estimator choice influence our ability to detect changes in home-range size?. Animal Biotelemetry 2015;3(1):16. https://doi.org/10.1186/s40317-015-0051-x.

    Article  Google Scholar 

  112. Langrock R, King R, Matthiopoulos J, Thomas L, Fortin D, Morales J. Flexible and practical modeling of animal telemetry data: Hidden markov models and extensions. Ecol 2012;93(11): 2336. https://doi.org/10.1890/11-2241.1.

    Article  Google Scholar 

  113. Fieberg J, Signer J, Smith B, Avgar T. 2020. A ‘how-to’ guide for interpreting parameters in habitat-delection analyses. https://doi.org/10.1101/2020.11.12.379834.

  114. Calabrese J, Fleming C, Gurarie E. ctmm: An r package for analyzing animal relocation data as a continuous-time stochastic process. Methods Ecol Evol 2016;7(9):1124. https://doi.org/10.1111/2041-210X.12559.

    Article  Google Scholar 

  115. Calenge C. The package “adehabitat” for the r software: A tool for the analysis of space and habitat use by animals. Ecol Model 2006;197(3-4):516. https://doi.org/10.1016/j.ecolmodel.2006.03.017.

    Article  Google Scholar 

  116. Michelot T, Langrock R, Patterson T. movehmm: An r package for the statistical modelling of animal movement data using hidden markov models. Methods Ecol Evol 2016;7(11):1308. https://doi.org/10.1111/2041-210X.12578.

    Article  Google Scholar 

  117. Signer J, Fieberg J, Avgar T. Animal movement tools (amt): R package for managing tracking data and conducting habitat selection analyses. Ecol Evol 2019;9(2):880. https://doi.org/10.1002/ece3.4823.

    PubMed  PubMed Central  Article  Google Scholar 

  118. Joo R, Boone M, Clay T, Patrick S, Clusella-Trullas S, Basille M. Navigating through the r packages for movement. J Anim Ecol 2020;89(1):248. https://doi.org/10.1111/1365-2656.13116.

    PubMed  Article  Google Scholar 

  119. Taylor P, Fahrig L, Henein K, Merriam G. Connectivity is a vital element of landscape structure. Oikos 1993;68(3):571. https://doi.org/10.2307/3544927.

    Article  Google Scholar 

  120. Tischendorf L, Fahrig L. On the usage and measurement of landscape connectivity. Oikos 2000; 90(1):7. https://doi.org/10.1034/j.1600-0706.2000.900102.x.

    Article  Google Scholar 

  121. Kindlmann P, Burel F. 2008. Connectivity measures: A review. Landsc Ecol s10,980-008-9245-4. https://doi.org/10.1007/s10980-008-9245-4.

  122. Mestre F, Silva B. 2019. lconnect: Simple tools to compute landscape connectivity metrics. r package version 0.1.0. https://CRAN.R-project.org/package=lconnect.

  123. Godínez-Gómez O, Correa Ayram CA. 2020. Makurhini: Analyzing landscape connectivity. r package version 2.0.0. https://github.com/connectscape/Makurhini.

  124. Laita A, Kotiaho J, Mönkkönen M. Graph-theoretic connectivity measures: What do they tell us about connectivity?. Landsc Ecol 2011;26(7):951. https://doi.org/10.1007/s10980-011-9620-4.

    Article  Google Scholar 

  125. Chubaty A, Galpern P, Doctolero S. The r toolbox grainscape for modelling and visualizing landscape connectivity using spatially explicit networks. Methods Ecol Evol 2020;11(4):591. https://doi.org/10.1111/2041-210X.13350.

    Article  Google Scholar 

  126. Csardi G, Nepusz T. 2006. The igraph software package for complex network research. InterJournal Complex Systems, 1695.

  127. Adriaensen F, Chardon J, De Blust G, Swinnen E, Villalba S, Gulinck H, Matthysen E. The application of ‘least-cost’ modelling as a functional landscape model. Landsc Urban Plan 2003;64 (4):233. https://doi.org/10.1016/S0169-2046(02)00242-6.

    Article  Google Scholar 

  128. van Etten J. 2017. R package gdistance: Distances and routes on geographical grids. J Stat Softw 76(13):1–21. https://doi.org/10.18637/jss.v076.i13.

  129. Fletcher R, Sefair J, Wang C, Poli C, Smith T, Bruna E, Holt R, Barfield M, Marx A, Acevedo M. Towards a unified framework for connectivity that disentangles movement and mortality in space and time. Ecol Lett 2019;22(10):1680. https://doi.org/10.1111/ele.13333.

    PubMed  Article  Google Scholar 

  130. Marx A, Wang C, Sefair J, Acevedo M, Fletcher R. samc: An r package for connectivity modeling with spatial absorbing markov chains. Ecography 2020;43(4):518. https://doi.org/10.1111/ecog.04891.

    Article  Google Scholar 

  131. Manel S, Schwartz M, Luikart G, Taberlet P. Landscape genetics: Combining landscape ecology and population genetics. Trends Ecol Evol 2003;18(4):189. https://doi.org/10.1016/S0169-5347(03)00008-9.

    Article  Google Scholar 

  132. Storfer A, Murphy M, Evans J, Goldberg C, Robinson S, Spear S, Dezzani R, Delmelle E, Vierling L, Waits L. Putting the ‘landscape’ in landscape genetics. Heredity 2007;98(3):128. https://doi.org/10.1038/sj.hdy.6800917.

    CAS  PubMed  Article  Google Scholar 

  133. Holderegger R, Wagner H. A brief guide to landscape genetics. Landsc Ecol 2006;21(6):793. https://doi.org/10.1007/s10980-005-6058-6.

    Article  Google Scholar 

  134. Savary P. 2020. graph4lg: Build graphs for landscape genetics analysis. r package version 0.5.0. https://CRAN.R-project.org/package=graph4lg.

  135. Adamack A, Gruber B. Popgenreport: Simplifying basic population genetic analyses in r. Methods Ecol Evol 2014;5(4):384. https://doi.org/10.1111/2041-210X.12158.

    Article  Google Scholar 

  136. Gruber B, Adamack A. landgenreport: A new r function to simplify landscape genetic analysis using resistance surface layers. Mol Ecol Resour 2015;15(5):1172. https://doi.org/10.1111/1755-0998.12381.

    PubMed  Article  Google Scholar 

  137. Qin X. 2019. Hierdpart: Partitioning hierarchical diversity and differentiation across metrics and scales, from genes to ecosystems. r package version 0.5.0. https://CRAN.R-project.org/package=HierDpart.

  138. Murphy M, Dezzani R, Pilliod DS, Storfer A. Landscape genetics of high mountain frog metapopulations. Mol Ecol 2010;19(17):3634. https://doi.org/10.1111/j.1365-294X.2010.04723.x.

    PubMed  Article  Google Scholar 

  139. Gardner R, Milne B, Turnei M, O’Neill R. Neutral models for the analysis of broad-scale landscape pattern. Landsc Ecol 1987;1(1):19. https://doi.org/10.1007/BF02275262.

    Article  Google Scholar 

  140. With K, King A. The use and misuse of neutral landscape models in ecology. Oikos 1997;79 (2):219. https://doi.org/10.2307/3546007.

    Article  Google Scholar 

  141. Schlather M, Malinowski A, Menck P, Oesting M, Strokorb K. 2015. Analysis, simulation and prediction of multivariate random fields with package randomfields. J Stat Softw. 63(8):1–25. https://doi.org/10.18637/jss.v063.i08.

  142. Bengtsson H. 2020. A unifying framework for parallel and distributed processing in r using futures. arXiv:2008.00553 [cs, stat].

  143. Schubert M. clustermq enables efficient parallelization of genomic analyses. Bioinformatics 2019; 35(21):4493. https://doi.org/10.1093/bioinformatics/btz284.

    CAS  PubMed  PubMed Central  Article  Google Scholar 

  144. McCallum Q, Weston S. Parallel R. Data analysis in the distributed world. Beijing: O’Reilly; 2012.

    Google Scholar 

Download references

Acknowledgements

We are thankful to all members of the ‘Coastal Ecology and Conservation Lab’ at the University of Michigan for comments on an early draft of the manuscript. We would like to thank two anonymous reviewers for their valuable comments on earlier drafts of the manuscript.

Funding

Open Access funding enabled and organized by Projekt DEAL. LJG was supported by the Natural Environment Research Council (NERC) grant A complex-systems approach to improve understanding of the biodiversity-landscape structure relationship, grant number NE/T009373/1. Other authors did not receive any funding for this research.

Author information

Authors and Affiliations

Authors

Contributions

MHKH and JN designed the survey form and analyzed the responses of the participants. MHKH and JN drafted the manuscript with contributions of JS and LJG and all authors contributed critically to the manuscript and gave final approval for publication. We used the ‘sequence–determines–credit’ approach (SDC) for the sequence of authors.

Corresponding author

Correspondence to Maximillian H.K. Hesselbarth.

Ethics declarations

Conflict of Interest

MHKH and JN are authors of the landscapemetrics and landscapetools package. MHKH is author of the NLMR package. JN is author of belg and motif package. JS is author of the amt package. LJG is author of the grainchanger package.

Additional information

Availability of Data and Material (Data Transparency)

All raw data and scripts to analyze the data can be found at https://github.com/r-spatialecology/Hesselbarth_et_al_CLER.

Human and Animal Rights and Informed Consent

This article does not contain any studies with human or animal subjects performed by any of the authors.

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This article is part of the Topical Collection on Methodological Developments in Landscape Ecology and Related Fields

Electronic supplementary material

Below is the link to the electronic supplementary material.

(PDF 133 KB)

Glossary

API

Application programming interface. A set of protocols for sending and retrieving information, for example, from a server

cell

Smallest, rectangular unit of raster data model

CRAN

Comprehensive R Archive Network. A repository for R package

CRS

Coordinate references system. A coordinate-based local, regional or global system used to locate geographical entities

EPSG

Public registry of geodetic datums, spatial reference systems, Earth ellipsoids, coordinate transformations and related units of measurement

GDAL

Open-source translator library for raster and vector spatial data formats

GIS

Geographic information system

landscape

Mosaic of land covers, ecosystems, habitat types, land uses

NLM

Neutral landscape model

open-source software

Software released under licenses that allow to use, modify and distribute it

patch

Neighboring cells with same value

PROJ

Open-source generic coordinate transformation library

raster

Cell grid based spatial data model

resolution

Size in meter or degree of one cell

R package

User-created software extension to R programming language

SDM

Species distribution modeling

Simple Features

A set of standards that specify a common storage and access model of spatial vector data

vector

Points, lines, and polygons-based spatial data model

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/.

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Hesselbarth, M.H., Nowosad, J., Signer, J. et al. Open-source Tools in R for Landscape Ecology. Curr Landscape Ecol Rep 6, 97–111 (2021). https://doi.org/10.1007/s40823-021-00067-y

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s40823-021-00067-y

Keywords

  • Spatial data
  • Statistical programming language
  • R packages
  • Reproducibility
  • Scientific software