get_gfw_emissions()
get_chirps()
now allows to specify the years for which to download CHIRPS resourcescalc_precipitation_chirps()
now only returns precipitation sumsactive_fire_properties
since resources can now be retrieved using prep_resources()
(see below)prep_resources()
to prepare resources for single assetsportfolio_long()
and portfolio_wide()
to automatically un-nest indicator columns and change the data layout to either long or widewrite_portfolio()
to serialize portfolios to GDAL supported spatial formats in either long or wide format and deprecates read_portfolio()
chunk_size
to mapme_options()
to control the size for which polygons are split and processed in chunks'MULTIPOLYGON'
and automatically combines the results based on an aggregation functionportfolio_long()
instead of tidyr::unnest()
datetime
, variable
, unit
and value
chirps
and nasa_grace
resources updatedmapme_check_connection
(#262)gfw_treecover
and gfw_lossyear
resources updated to v1.11 (#277, @fBedecarrats)gfw_lossyear
layer (#273)curl
, stringr
, and tidyselect
as dependenciesprogressr
and rvest
from Imports
to Suggests
SPEI
from Suggests
available_resources()
and available_indicators()
mapme_options()
to add fine-control of the packages behaviourinit_portfolio()
in favor of mapme_options()
check_available_years()
check_namespace()
download_or_skip()
check_engine()
check_stats()
select_engine()
make_global_grid()
unzip_and_remove()
st_make_valid()
from .read_vector()
.add_resources
to init_portfolio()
is deprecated. This means that get_resources()
has to be run in every new R session to make resource available for further processing (#219).Rasters are now cropped to the spatial extent of an asset with setting snap="out"
, thus delivering a slightly bigger extent (#212).
Speed improvements for GFW indicators (up to x10 for larger rasters) now require R package exactextractr
to be installed. Also, it is advised to have the R package landscapemetrics
installed to gain the full computation speed improvement.
calc_indicators()
checks for 0-length tibbles (#196, #199, #215)..read_raster_source()
now uses a simplified logic to cover all cases (e.g. single tiles, tiled rasters with and without temporal dimension, single temporal rasters) (#211).snap="out"
by default (#212)..read_raster_source()
now projects assets in case their CRS differs from the portfolio (#213).sf
objects instead of being written to disk (#219)..read_raster_source()
now applies a precision round-trip of 5 decimal point to match rasters with slight changes in their spatial extent (#217).register_resource()
and register_indicator()
now issue warnings for resources/indicators with names already registered and overwrites them (#220).added new resource called ucdp_ged
providing a database of violent conflict from 1989 to today
added a new indicator called fatalities
aggregating number of deaths by type of conflict on a monthly time scale based on the ucdp_ged
resource.
Added a new resource called fritz_et_al
providing a raster layer of deforestation
added a new resource called fritz_et_al
providing a raster layer of deforestation drivers in tropical forests based on Fritz et al. (2022)
added a new indicator called deforestation_drivers
using the fritz_et_al
resource to obtain information on the absolute and relative area driving forest losses in assets for the period 2008-2019
added two new exported functions register_resource()
and register_indicator()
which allow users to register custom functions for resources/indicators
added a new vignette for the web-version of the package only informing about how to obtain wide-output from indicators
added a new vignette for the web-version for a custom analysis of the NASA FIRMS resource in the example section
added the data for years 2017-2020 to the Global Mangrove Watch resource
Changed the parallel backend to the future package. Parallel processing is now implemented by furrr::future_map() on the asset level within the calc_indicators() function. User code is now required to set up a plan() to enable parallel processing. The function call needs to be wrapped on the user side with progressr::with_progress() to show a progress bar.
mapme.biodiversity no longer sets terra’s temporal directory for you. Instead you have to call terra::terraOptions()
manually
esalandcover
indicator now returns the value per each land cover class exactly once (#177)disabled running examples on CRAN
disabled tests for get_* functions on CRAN
terra
engines now use get()
to resolve the requested zonal statistic function
applying tidyverse coding style to existing code (#156, @karpfen)
extensive re-factoring of vector-raster zonal statistic engines (#150)
extensive re-writing of testing infrastructure for indicator functions omitting the usage of snapshot tests as far as possible (#142)
rundir
and todisk
arguments removed from indicator functions since they were of no practical use
instead of a resource and indicator backlog, resources and indicators are now registered to .pkgenv and queried there during runtime. This also allows users to register custom resources/indicator functions
removed deprecation warnings for old resource/indicator name
on MacOS s2-based calculations are now enabled so users can expect the package to return numerically equivalent results on any operating system (#131)
the online source for the nasa_srtm
resource shows an expired SSL certificate since November 2022. The get_resources()
function now includes an error and instructions how to disable SSL certification at a users own risk. The websites maintainers have been contacted and asked to renew the certification. (#131)
GFW resources are now updated to use the latest version allowing analysis for the additional year of 2021 (#123, @fBedecarrats)
GFW indicators now accept numeric min_size
argument allowing to specify fractional covers (#110)
fire indicators now allow the simultaneous calculation of indicators based on MODIS and VIIRS. Before users had to chose between one of the instruments for each analysis (#126)
case when one or multiple assets return NA instead of a tibble is now properly tested and handled (#101)
Rasters are no longer temporary written to disk to omit a bug caused by applying mask/classify to an already existing raster file (#108, @Jo-Schie)
Bug with soilproperties set to NA caused by the function to return a data.frame instead of a tibble was fixed (#116)
both, treecoverloss_emissions
and treecover_area_and_emissions
now return 0 instead of NaN for observation years where now forest loss occurred (#120)
.make_global_grid()
now specifies the CRS when constructing the bounding box and returns the grid in the specified CRS instead of Lat/Lon (#113)
.calc_active_fire_properties
now uses st_coordinates to retrieve locations of fires (#119, @DavisVaughan)
tests for MacOS have been re-enabled (#131)
tests for downloading nasa_srtm
resource are skipped because the SSL certificate of the online source has expired (#131)
extensive renaming of resources and indicators. These are handled gracefully until the next release (i.e. a warning is issued and names are replaced):
treecover2000
-> gfw_treecover
lossyear
-> gfw_lossyear
greenhouse
-> gfw_emissions
traveltime
-> nelson_et_al
nasagrace
-> nasa_grace
mintemperature
-> worldclim_min_temperature
maxtemperature
-> worldclim_max_temperature
precipitation
-> worldclim_precipitation
ecoregions
-> teow
mangrove
-> gmw
srtmdem
-> nasa_srtm
treecover
-> treecover_area
emissions
-> treecoverloss_emissions
treeloss
-> treecover_area_and_emissions
chirpsprec
-> precipitation_chirps
accessibility
-> traveltime
popcount
-> population_count
wctmin
-> temperature_min_wc
wctmax
-> temperature_max_wc
wcprec
-> precipitation_wc
gmw
-> mangroves_area
teow
-> ecoregion
init_portfolio()
now sets the testing
attribute to FALSE by default.get_<resource>()
functions now return filenames early if testing
is set to TRUE.calc_<indicator>()
examples now copy files to the R temporal directory and are wrapped in try()
to avoid errors/warnings on CRAN if an internet resource is not available.calc_tri()
and calc_elevation()
are now disabled on CRAN because of the responsiveness of CIGAR servers.NEWS.md
file to track changes to the package.init_portfolio()
is used to initialize a portfolio object. The input must be an sf object where all geometries are of type POLYGON
get_resources()
calc_indicators()
write_portfolio()
read_portfolio()
. If users wish to download additional resources or calculate indicators, init_portfolio()
has to be called again.