json_cube

Read a data cube from a json description file

Description

Read a data cube from a json description file

Usage

json_cube(json, path = NULL)

Arguments

Argument Description
json length-one character vector with a valid json data cube description
path source data cube proxy object

Details

Data cubes can be stored as JSON description files. These files do not store any data but the recipe how a data cube is constructed, i.e., the chain (or graph) of processes involved.

Since data cube objects (as returned from raster_cube) cannot be saved with normal R methods, the combination of as_json and json_cube provides a cheap way to save virtual data cube objects across several R sessions, as in the examples.

Value

data cube proxy object

Examples

# create image collection from example Landsat data only 
# if not already done in other examples
if (!file.exists(file.path(tempdir(), "L8.db"))) {
  L8_files <- list.files(system.file("L8NY18", package = "gdalcubes"),
                         ".TIF", recursive = TRUE, full.names = TRUE)
  create_image_collection(L8_files, "L8_L1TP", file.path(tempdir(), "L8.db"), quiet = TRUE) 
}

L8.col = image_collection(file.path(tempdir(), "L8.db"))
v = cube_view(extent=list(left=388941.2, right=766552.4, 
              bottom=4345299, top=4744931, t0="2018-01", t1="2018-12"),
              srs="EPSG:32618", nx = 497, ny=526, dt="P1M")
cube = raster_cube(L8.col, v) 

# save
fname = tempfile()
as_json(cube, fname)

# load
json_cube(path = fname)  
A data cube proxy object

Dimensions:
         low       high count       pixel_size chunk_size
t 2018-01-01 2018-12-01    12              P1M          1
y    4345299    4744931   526 759.756653992395        384
x   388941.2   766552.4   497 759.781086519115        384

Bands:
   name offset scale nodata unit
1   B01      0     1    NaN     
2   B02      0     1    NaN     
3   B03      0     1    NaN     
4   B04      0     1    NaN     
5   B05      0     1    NaN     
6   B06      0     1    NaN     
7   B07      0     1    NaN     
8   B08      0     1    NaN     
9   B09      0     1    NaN     
10  B10      0     1    NaN     
11  B11      0     1    NaN     
12  BQA      0     1    NaN