This function represents mean evaluation scores (and their standard deviation)
of species distribution models, from BIOMOD.models.out
or
BIOMOD.ensemble.models.out
objects that can be obtained from
BIOMOD_Modeling
or BIOMOD_EnsembleModeling
functions. Scores are
represented according to 2 different evaluation methods, and models can be grouped
(see Details).
bm_PlotEvalMean(
bm.out,
metric.eval = NULL,
dataset = "calibration",
group.by = "algo",
do.plot = TRUE,
...
)
a BIOMOD.models.out
or BIOMOD.ensemble.models.out
object that can be obtained with the BIOMOD_Modeling
or
BIOMOD_EnsembleModeling
functions
a vector
containing evaluation metric names to be used, must
be among POD
, FAR
, POFD
, SR
, ACCURACY
, BIAS
,
ROC
, TSS
, KAPPA
, OR
, ORSS
, CSI
, ETS
,
BOYCE
, MPA
a character
corresponding to the dataset upon which evaluation metrics
have been calculated and that is to be represented, must be among calibration
,
validation
, evaluation
a character
corresponding to the way kept models will be combined to
compute mean and sd evaluation scores, must be among full.name
, PA
, run
,
algo
(if bm.out
is a BIOMOD.models.out
object), or
full.name
, merged.by.PA
, merged.by.run
, merged.by.algo
(if bm.out
is a BIOMOD.ensemble.models.out
object)
(optional, default TRUE
)
A logical
value defining whether the plot is to be rendered or not
some additional arguments (see Details)
A list
containing a data.frame
with mean and standard deviation of evaluation
scores and the corresponding ggplot
object representing them according to 2 different
evaluation methods.
...
can take the following values :
xlim
: an integer
corresponding to the x maximum limit to represent
ylim
: an integer
corresponding to the y maximum limit to represent
main
: a character
corresponding to the graphic title
col
: a vector
containing new color values
BIOMOD.models.out
, BIOMOD.ensemble.models.out
,
BIOMOD_Modeling
, BIOMOD_EnsembleModeling
,
get_evaluations
Other Secondary functions:
bm_BinaryTransformation()
,
bm_CrossValidation()
,
bm_FindOptimStat()
,
bm_MakeFormula()
,
bm_ModelingOptions()
,
bm_PlotEvalBoxplot()
,
bm_PlotRangeSize()
,
bm_PlotResponseCurves()
,
bm_PlotVarImpBoxplot()
,
bm_PseudoAbsences()
,
bm_RunModelsLoop()
,
bm_SRE()
,
bm_SampleBinaryVector()
,
bm_SampleFactorLevels()
,
bm_Tuning()
,
bm_VariablesImportance()
Other Plot functions:
bm_PlotEvalBoxplot()
,
bm_PlotRangeSize()
,
bm_PlotResponseCurves()
,
bm_PlotVarImpBoxplot()
library(terra)
# Load species occurrences (6 species available)
data(DataSpecies)
head(DataSpecies)
# Select the name of the studied species
myRespName <- 'GuloGulo'
# Get corresponding presence/absence data
myResp <- as.numeric(DataSpecies[, myRespName])
# Get corresponding XY coordinates
myRespXY <- DataSpecies[, c('X_WGS84', 'Y_WGS84')]
# Load environmental variables extracted from BIOCLIM (bio_3, bio_4, bio_7, bio_11 & bio_12)
data(bioclim_current)
myExpl <- terra::rast(bioclim_current)
DONTSHOW({
myExtent <- terra::ext(0,30,45,70)
myExpl <- terra::crop(myExpl, myExtent)
})
# ---------------------------------------------------------------
file.out <- paste0(myRespName, "/", myRespName, ".AllModels.models.out")
if (file.exists(file.out)) {
myBiomodModelOut <- get(load(file.out))
} else {
# Format Data with true absences
myBiomodData <- BIOMOD_FormatingData(resp.var = myResp,
expl.var = myExpl,
resp.xy = myRespXY,
resp.name = myRespName)
# Model single models
myBiomodModelOut <- BIOMOD_Modeling(bm.format = myBiomodData,
modeling.id = 'AllModels',
models = c('RF', 'GLM'),
CV.strategy = 'random',
CV.nb.rep = 2,
CV.perc = 0.8,
OPT.strategy = 'bigboss',
metric.eval = c('TSS','ROC'),
var.import = 3,
seed.val = 42)
}
# ---------------------------------------------------------------
# Get evaluation scores
get_evaluations(myBiomodModelOut)
# Represent mean evaluation scores
bm_PlotEvalMean(bm.out = myBiomodModelOut)