Skip to contents

Class used to save the results of one of the following functions: gridSearch, randomSearch or optimizeModel.

Plot an SDMtune object. Use the interactive argument to create an interactive chart.

Usage

# S4 method for SDMtune
show(object)

# S4 method for SDMtune,missing
plot(x, title = "", interactive = FALSE)

Arguments

object

SDMtune object

x

SDMtune object.

title

character. The title of the plot.

interactive

logical, if TRUE plot an interactive chart.

Value

If interactive = FALSE the function returns a ggplot object otherwise it returns an SDMtuneChart object that contains the path of the temporary folder where the necessary files to create the chart are saved. In both cases the objects are returned as invisible.

Slots

results

data.frame. Results with the evaluation of the models.

models

list. List of SDMmodel or SDMmodelCV objects.

Author

Sergio Vignali

Examples

# \donttest{
# Acquire environmental variables
files <- list.files(path = file.path(system.file(package = "dismo"), "ex"),
                    pattern = "grd", full.names = TRUE)
predictors <- terra::rast(files)

# Prepare presence and background locations
p_coords <- virtualSp$presence
bg_coords <- virtualSp$background

# Create SWD object
data <- prepareSWD(species = "Virtual species", p = p_coords, a = bg_coords,
                   env = predictors, categorical = "biome")
#>  Extracting predictor information for presence locations
#>  Extracting predictor information for presence locations [42ms]
#> 
#>  Extracting predictor information for absence/background locations
#>  Extracting predictor information for absence/background locations [67ms]
#> 

# Split presence locations in training (80%) and testing (20%) datasets
datasets <- trainValTest(data, test = 0.2, only_presence = TRUE)
train <- datasets[[1]]
test <- datasets[[2]]

# Train a model
model <- train(method = "Maxnet", data = train, fc = "l")

# Define the hyperparameters to test
h <- list(reg = 1:5, fc = c("lqp", "lqph"))

# Run the gridSearch function using as metric the AUC
output <- gridSearch(model, hypers = h, metric = "auc", test = test)
#> Grid Search  ■■■■                               9% | ETA: 11s - 00:00:1.1
#> Grid Search  ■■■■■■                            18% | ETA: 27s - 00:00:06
#> Grid Search  ■■■■■■■■■                         27% | ETA: 19s - 00:00:7.1
#> Grid Search  ■■■■■■■■■■■■■■■■■                 55% | ETA: 10s - 00:00:11.9
#> Grid Search  ■■■■■■■■■■■■■■■■■■■■■■■           73% | ETA:  5s - 00:00:14.5
#> Grid Search  ■■■■■■■■■■■■■■■■■■■■■■■■■■■■      91% | ETA:  2s - 00:00:17.8
#> Grid Search  ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■  100% | ETA:  0s - 00:00:17.8
#> 
output
#> 
#> ── Object of class: <SDMtune> ──
#> 
#> Method: Maxnet
#> 
#> ── Tested hyperparameters 
#>fc: "lqp" and "lqph"
#>reg: 1, 2, 3, 4, and 5

# Plot the output
plot(output, title = "My experiment")


# Plot the interactive chart
p <- plot(output, title = "My experiment", interactive = TRUE)
# Print the temporary folder that stores the files used to create the chart
str(p)
#>  'SDMtuneChart' chr "/tmp/RtmpqUAj2H/SDMtune25385e93e885"
# }