plot.MarginalResponse: Show marginal response curves.

View source: R/plot.R

plot.MarginalResponseR Documentation

Show marginal response curves.

Description

Plot marginal response curves using ggplot2 by optionally set target variable(s).

Usage

## S3 method for class 'MarginalResponse'
plot(x, target_var = NA, smooth_span = 0.3, ...)

Arguments

x

(MarginalResponse) The marginal response curve object to plot. It could be the return of function marginal_response.

target_var

(vector of character) The target variable to plot. It could be NA. If it is NA, all variables will be plotted.

smooth_span

(numeric) The span value for smooth fit in ggplot2. When it is 0, no smooth applied. The default is 0.3.

...

Not used.

Value

ggplot2 figure of response curves

See Also

marginal_response

Examples


# Using a pseudo presence-only occurrence dataset of
# virtual species provided in this package
library(dplyr)
library(sf)
library(stars)
library(itsdm)

# Prepare data
data("occ_virtual_species")
obs_df <- occ_virtual_species %>% filter(usage == "train")
eval_df <- occ_virtual_species %>% filter(usage == "eval")
x_col <- "x"
y_col <- "y"
obs_col <- "observation"

# Format the observations
obs_train_eval <- format_observation(
  obs_df = obs_df, eval_df = eval_df,
  x_col = x_col, y_col = y_col, obs_col = obs_col,
  obs_type = "presence_only")

env_vars <- system.file(
  'extdata/bioclim_tanzania_10min.tif',
  package = 'itsdm') %>% read_stars() %>%
  slice('band', c(1, 5, 12, 16))

# With imperfect_presence mode,
mod <- isotree_po(
  obs_mode = "imperfect_presence",
  obs = obs_train_eval$obs,
  obs_ind_eval = obs_train_eval$eval,
  variables = env_vars, ntrees = 20,
  sample_size = 0.8, ndim = 2L,
  seed = 123L, response = FALSE,
  spatial_response = FALSE,
  check_variable = FALSE)

marginal_responses <- marginal_response(
  model = mod$model,
  var_occ = mod$vars_train,
  variables = mod$variables)
plot(marginal_responses, target_var = 'bio1')



itsdm documentation built on July 9, 2023, 6:45 p.m.