JuliaDataCubes / JuliaDataCubes/YAXArrays.jl
Cannot save WorldClim Elevation data to .tif
Open
Nobody has claimed this yet.
question
- Dominant language
- Julia
- Stars
- 132
- Forks
- 25
- PR merge metrics
- No merged PRs in 30d
Description
When I try to use savecube to resave the WorldClim elevation to tif I get the following error:
using YAXArrays
using RasterDataSources
elevpath = getraster(WorldClim{Elevation},:elev, res="30s")
elev = Cube(elevpath)
zarrpath = tempname() * ".zarr"
julia> savecube(elev, zarrpath)
ERROR: Could not determine output projection from attributes, please specify userproj
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:35
[2] getproj(::Nothing, attrs::Dict{String, Any})
@ YAXArrayBase ~/.julia/packages/YAXArrayBase/R6Frw/src/datasets/archgdal.jl:127
[3] create_dataset(::Type{…}, outpath::String, gatts::Dict{…}, dimnames::Vector{…}, dimvals::Vector{…}, dimattrs::Vector{…}, vartypes::Vector{…}, varnames::Vector{…}, vardims::Vector{…}, varattrs::Vector{…}, varchunks::Vector{…}; userproj::Nothing, kwargs::@Kwargs{})
@ YAXArrayBase ~/.julia/packages/YAXArrayBase/R6Frw/src/datasets/archgdal.jl:157
[4] create_dataset(::Type{…}, outpath::String, gatts::Dict{…}, dimnames::Vector{…}, dimvals::Vector{…}, dimattrs::Vector{…}, vartypes::Vector{…}, varnames::Vector{…}, vardims::Vector{…}, varattrs::Vector{…}, varchunks::Vector{…})
@ YAXArrayBase ~/.julia/packages/YAXArrayBase/R6Frw/src/datasets/archgdal.jl:134
[5] savedataset(ds::Dataset; path::String, persist::Nothing, overwrite::Bool, append::Bool, skeleton::Bool, backend::Symbol, driver::Symbol, max_cache::Float64, writefac::Float64, kwargs::@Kwargs{})
@ YAXArrays.Datasets ~/.julia/packages/YAXArrays/zyFvF/src/DatasetAPI/Datasets.jl:571
[6] savedataset
@ ~/.julia/packages/YAXArrays/zyFvF/src/DatasetAPI/Datasets.jl:521 [inlined]
[7] savecube(c::YAXArray{…}, path::String; layername::String, datasetaxis::String, max_cache::Float64, backend::Symbol, driver::Symbol, chunks::Nothing, overwrite::Bool, append::Bool, skeleton::Bool, writefac::Float64, kwargs::@Kwargs{})
@ YAXArrays.Datasets ~/.julia/packages/YAXArrays/zyFvF/src/DatasetAPI/Datasets.jl:637
[8] savecube(c::YAXArray{Union{…}, 2, DiskArrayTools.CFDiskArray{…}, Tuple{…}, Dict{…}}, path::String)
@ YAXArrays.Datasets ~/.julia/packages/YAXArrays/zyFvF/src/DatasetAPI/Datasets.jl:617
[9] top-level scope
@ REPL[75]:1
Some type information was truncated. Use `show(err)` to see complete types.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with savecube in YAXArrays.Datasets at Datasets.jl:617-637, then trace the getproj and create_dataset calls shown in YAXArrayBase's archgdal.jl at lines 127-157. Reproduce the WorldClim elevation example and clarify the expected TIFF output versus the zarrpath used in the report; done means saving the elevation data completes without the projection error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- data
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100