datasheetRaster: Retrieve spatial data from a SyncroSim Datasheet

Description Usage Arguments Details Value Examples

Description

This function retrieves spatial columns from one or more SyncroSim Scenario Datasheets.

Usage

 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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
datasheetRaster(
  ssimObject,
  datasheet,
  column = NULL,
  scenario = NULL,
  iteration = NULL,
  timestep = NULL,
  subset = NULL,
  forceElements = FALSE
)

## S4 method for signature 'character'
datasheetRaster(
  ssimObject,
  datasheet,
  column = NULL,
  scenario = NULL,
  iteration = NULL,
  timestep = NULL,
  subset = NULL,
  forceElements = FALSE
)

## S4 method for signature 'list'
datasheetRaster(
  ssimObject,
  datasheet,
  column = NULL,
  scenario = NULL,
  iteration = NULL,
  timestep = NULL,
  subset = NULL,
  forceElements = FALSE
)

## S4 method for signature 'SsimObject'
datasheetRaster(
  ssimObject,
  datasheet,
  column = NULL,
  scenario = NULL,
  iteration = NULL,
  timestep = NULL,
  subset = NULL,
  forceElements = FALSE
)

## S4 method for signature 'Scenario'
datasheetRaster(
  ssimObject,
  datasheet,
  column = NULL,
  scenario = NULL,
  iteration = NULL,
  timestep = NULL,
  subset = NULL,
  forceElements = FALSE
)

Arguments

ssimObject

SsimLibrary/Project/Scenario object or list of Scenario objects. If SsimLibrary/Project, then scenario argument is required

datasheet

character string. The name of the Datasheet containing the raster data

column

character string. The name of the column in the datasheet containing the file names for raster data. If NULL (default) then use the first column that contains raster file names

scenario

character string, integer, or vector of these. The Scenarios to include. Required if SsimObject is an SsimLibrary/Project, ignored if SsimObject is a list of Scenarios (optional)

iteration

integer, character string, or vector of integer/character strings. Iteration(s) to include. If NULL (default) then all iterations are included. If no Iteration column is in the Datasheet, then ignored

timestep

integer, character string, or vector of integer/character string. Timestep(s) to include. If NULL (default) then all timesteps are included. If no Timestep column is in the Datasheet, then ignored

subset

logical expression indicating Datasheet rows to return. e.g. expression(grepl("Ts0001", Filename, fixed=T)). See subset() for details (optional)

forceElements

logical. If TRUE then returns a single raster as a RasterStack; otherwise returns a single raster as a RasterLayer directly. Default is FALSE

Details

The names of the returned raster stack contain metadata. For Datasheets without Filename this is:

paste0(<datasheet name>,".Scn",<scenario id>,".",<tif name>).

For Datasheets containing Filename this is:

paste0(<datasheet name>,".Scn",<scenario id>,".It",<iteration>,".Ts",<timestep>).

Value

A RasterLayer, RasterStack or RasterBrick object. See raster package documentation for details.

Examples

 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
44
45
46
47
48
# Install the helloworldSpatial package from the server
addPackage("helloworldSpatial")

# Specify file path and name of new SsimLibrary
myLibraryName <- file.path(tempdir(), "testlib_datasheetRaster")

# Set up a SyncroSim Session
mySession <- session()

# Use the example template library from helloworldSpatial
myLibrary <- ssimLibrary(name = myLibraryName,
                         session = mySession,
                         package = "helloworldSpatial",
                         template = "example-library",
                         overwrite=TRUE)

# Set up Project and Scenario
myProject <- project(myLibrary, project = "Definitions")
myScenario <- scenario(myProject, scenario = "My Scenario")

# Run Scenario to generate results
resultScenario <- run(myScenario)

# Extract specific Datasheet rasters by iteration and timestep
resultRaster <- datasheetRaster(resultScenario,
                  datasheet = "IntermediateDatasheet",
                  column = "OutputRasterFile",
                  iteration = 3,
                  timestep = 2
)

# Extract specific Datasheet rasters using pattern matching
resultDatasheet <- datasheet(resultScenario, name = "IntermediateDatasheet")
head(resultDatasheet)
resultRaster <- datasheetRaster(resultScenario, 
                  datasheet = "IntermediateDatasheet",
                  column = "OutputRasterFile",
                  subset = expression(grepl("ts20", 
                                             resultDatasheet$OutputRasterFile,
                                             fixed = TRUE))
)

# Return the raster Datasheets as a raster stack
resultRaster <- datasheetRaster(resultScenario, 
                 datasheet = "IntermediateDatasheet",
                 column = "OutputRasterFile",
                 forceElements = TRUE
                 )

rsyncrosim documentation built on Oct. 28, 2021, 1:07 a.m.