knitr::opts_chunk$set( collapse = TRUE, comment = "#>", fig.path = "README-" )
Support for spatial processing tasks is provided in
R by several great packages, spanning from all-purpose packages providing generalized access to the main spatial data classes and corresponding processing methods (e.g.,
rgdal - providing functions for handling raster and vector spatial data -), to more "specialized" ones meant to allow conducting more specific processing tasks (e.g.,
MODIStsp), or to provide optimized/improved/easier solutions for methods already provided by the aforementioned general-purpose packages (e.g.,
mapview) (Curated lists of some very good packages can be found here, here and here).
This huge variability provides advanced
R programmers with great flexibility for conducting simple or complex spatial data analyses, by combining functionalities of different packages within custom scripts. At the same time, it may be confusing for less skilled programmers, who may struggle with dealing with multiple packages and don't know that a certain processing task may be more efficiently conducted by using less-known (and sometimes difficult to find) packages.
In this context,
sprawl aims to simplify the execution of some "common" spatial processing tasks (e.g., reading/writing spatial datasets, extracting statistics from large datasets, etc.) by providing a single and (hopefully) simpler access point to functionalities spread in the
R packages ecosystem.
The aforementioned objectives are accomplished in
writevecto read/write vector files from/to disk);
extract_rast) involving the use of different functions and/or packages;
sprawl is expected to be a broadly-aimed (and therefore rather "amorphous") and rapidly-changing package, which functionalities are expected to 1. gradually grow to include additional functions/wrappers, and 2. be sometimes removed/changed as soon as similar or better functionalities start to be provided by different/more focused packages.
sprawl is currently developed and maintained by personnel of the Milan section of CNR-IREA (Institute on Remote Sensing of Environment - National Research Council, Italy - http://www.irea.cnr.it/en/)
If you stumble on this page, please be advised that
sprawl is currently in an early stage
of development. This means that things are going to change rapidly, and we do not guarantee
that everything works as expected. Additionally, be warned that until a first official version
is released, functions may change behaviour or even completely disappear while we test different
approaches and solutions ! (besides this: we would be happy to have beta-testers !)
You can install sprawl from git-hub with:
Note that, given its rather broad scope,
sprawl imports functions from
several other packages. Since some of those have quite specific System Requirements, it's
possible that you'll struggle a bit in installation due to unresolved dependencies. In that
case, please have a look at the installation error messages to see which package has problems
in installation and try to install it beforehand (consulting its specific CRAN pages or doing
a stackoverflow search may help !).
The main functions available in
sprawl will bedocumented in
sprawl website at
here, along with usage examples and benchmarking results.
We are open for contributions/help in improving
sprawl and extend its functionalities.
If you have a suggestion for and additional functionality please report it in our issues page.
If you wish to contribute to
sprawl development, please see our [Contributing page]
on Git Hub (COMING SOON !).
sprawl is currently developed and maintained by Lorenzo Busetto and Luigi Ranghetti of
CNR-IREA (Institute on Remote Sensing of Environment - National Research Council, Italy -
To cite package
sprawl in publications use:
Lorenzo Busetto and Luigi Ranghetti (2017). sprawl: Spatial Processing (in) R: Advanced Workflow Library. R package version 0.1.0.9000.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.