Description Usage Arguments Details Value Examples

View source: R/task_custom_spews.R

Computation, significance assessment and display of trends of a custom, user-defined indicator.

1 2 3 4 5 6 7 8 9 10 11 |

`fun` |
A function that takes a real-valued matrix as input and returns a single, numerical value. |

`x` |
A |

`along` |
A vector providing values over which the indicator trend
will be plotted. If |

`...` |
Ignored |

`nperm` |
The number of replicates to use to compute use in the null distribution |

`what` |
The trendline to be displayed. Defaults to the indicator's values ("value") but other metrics can be displayed. Correct values are "value", "pval" or "z_score". |

`display_null` |
Chooses whether a grey ribbon should be added to reflect
the null distribution. Note that it can not be displayed when the trend
line reflects something else than the indicator values (when |

Spatial Early-warning signals (EWS) are metrics that are based on the
spatial structure of a system and measure the degradation of an ecological
system. The package `spatialwarnings`

provides
generic indicators (`generic_spews`

), spectrum-based
indicators (`spectral_spews`

) and indicators based on patch
size distributions (`patchdistr_spews`

).

`create_indicator`

can extend the package to any indicator function.
It takes a function 'fun' and returns another function that can be used
as an indicator function similar to the `*_spews`

functions. The
results of this function can be assessed for significance using the
generic function `indictest`

and trends can be displayed using
`plot`

, `summary`

, etc. (see Examples).

`fun`

should be a function that takes as input a matrix and possibly
more arguments, and return a single numeric value. Note that the matrix
is converted internally to numeric values, as a side effect of using
c++ code when assessing significance. When working with logical matrices
(e.g. when computing patch size distributions), the matrix has to be
explicitely converted to logical within function 'fun'.

`create_indicator`

returns a function that can be used in the same way
than the other `*_spews`

functions (e.g. `generic_spews`

)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | ```
# Use the maximum patch size as indicator of degradation
maxpatchsize <- function(mat) {
# Note that we explicitely convert mat here to logical as it can be
# transformed into numeric internally.
max(patchsizes(mat > 0))
}
# Create the indicator function
maxpatch_spews <- create_indicator(maxpatchsize)
# Then work with this function as if it were a function from the *_spews
# family.
mp_indic <- maxpatch_spews(forestgap)
summary(mp_indic)
## Not run:
# Assess significance and display trends
options(mc.cores = 2)
mp_test <- indictest(mp_indic, nperm = 49)
plot(mp_test)
## End(Not run)
# Try spatial coefficient of variation as a spatial EWS. This function can
# have arguments.
spatial_cv <- function(mat, subsize) {
matc <- coarse_grain(mat, subsize)
return( sd(matc) / mean(matc) )
}
# Create indicator function
cv_spews <- create_indicator(spatial_cv)
# Compute and display trends
cv_indic <- cv_spews(serengeti, subsize = 3)
plot(cv_indic, along = serengeti.rain)
## Not run:
indictest(cv_indic, nperm = 99)
## End(Not run)
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.