Loading the individual cubes


#1

Hallo everyone,

a very simple question - I am currently having troubles loading any of the datacubes other than the standard cube.

I am quite convinced that this code used to work when I first tried:

using ESDL
using ESDLPlots

c = Cube("datacube/ESDCv1.0.2/esdc-8d-0.083deg-46x270x270-1.0.2")

d = getCubeData(c, longitude = (70,108), 
                   latitude = (25, 40), 
                   time = (Date(1990,1,1), Date(2015,12,31),
                   variable = Biosphere")
)

However, if I am running this code now I always get an error message for the Cube()-command:

SystemError: opening file datacube/ESDCv1.0.2/esdc-8d-0.083deg-46x270x270-1.0.2/cube.config: No such file or directory

Stacktrace:
[1] #systemerror#44 at ./error.jl:64 [inlined]
[2] systemerror(::String, ::Bool) at ./error.jl:64
[3] open(::String, ::Bool, ::Bool, ::Bool, ::Bool, ::Bool) at ./iostream.jl:104
[4] open(::Base.#readstring, ::String) at ./iostream.jl:150
[5] readchomp at ./io.jl:491 [inlined]
[6] ESDL.CubeAPI.Cube(::String) at /home/jovyan/.julia/v0.6/ESDL/src/CubeAPI/CubeAPI.jl:143
[7] include_string(::String, ::String) at ./loading.jl:522

I screened all of the Julia-examples in the shared nb folder but it seems that there is always only the example with the standard cube.

Sorry for this very basic question but I have spending quite some time now trying to figure it out - but I just failed. Probably it is something very simple.

Thanks and best wishes,

Fabian


#2

ps: I am aware that the error is related to the path of the dataset, but I played around with the path settings a lot and did not get anything to run.


#3

What is your current working directory? You can find out by running pwd(). You supplied a relative path to the data cube, so the command only works when your notebook is executed from the folder /home/jovyan/work/. To make sure your NoteBook works from eveywhere, I would suggest to use absolute paths, like

c = Cube("/home/jovyan/work/datacube/ESDCv1.0.2/esdc-8d-0.25deg-46x90x90-1.0.2/")

#4

this worked smoothly now with the absolute path. I really don’t know I did wrong before. I could swear that I tried exactly this absolute path before. But maybe I did not.
Thanks!


#5

I have now switched to the new Julia kernel (1.1.0) as I want to work with the JULIA packages ArchGDAL and GDAL and these are not available in the older kernel (or at least I could not install them).

Now if I try to access any other than the standard cube, I am again failing. The example you provided above is not working in the new Julia kernel and in the new JULIA examples in the shared folder only the small cube is loaded with the code

c = Cube()

I think it would be generally very helpful if there would always be a running example included in the “Cube access” Notebook on how to access other Cubes than the standard small one. I would assume that this is the first thing most people want to do.


#6


#7

Sorry for not being more explicit here, since the switch to Julia 1.1 you can only access the zarr data cubes, so this here works:

using ESDL

c = Cube("/home/jovyan/work/datacube/ESDCv2.0.0/esdc-8d-0.083deg-184x270x270-2.0.0.zarr/")

#8

So just switch to any of the v2.x.x cubes.


#9

great! thanks. this works well :slight_smile: