Skip to content

Error openning a variable from NetCDF #670

@luflarois

Description

@luflarois

I did the following code:

using NCDatasets
using Plots
using Rasters

# Caminho para o arquivo NetCDF
arquivo_nc = "/run/media/lufla/Backup_Lufla/data_rafael/MONAN_DIAG_G_MOD_GFS_2024041500_2024041909.x40962L55.nc"

# Abrindo o dataset NetCDF
ds = NCDatasets.Dataset(arquivo_nc)

# Lendo a variável t2m (temperatura a 2 metros)
t2m = ds["t2m"][:]

# Fechando o dataset
close(ds)

# Criando um raster a partir dos dados de temperatura
raster_t2m = Raster(t2m)

# Plotando o raster
p = plot(raster_t2m, title="Temperatura a 2 metros", xlabel="Longitude", ylabel="Latitude", color=:thermal)
savefig(p, "t2m_temperature_plot.png")

when I run it I receive the error:

 julia> raster_t2m = Raster(t2m)
ERROR: UndefKeywordError: keyword argument dims not assigned
Stacktrace:
 [1] Raster(A::Array{Union{Missing, Float32}, 3})
   @ Rasters ~/.julia/packages/Rasters/CrXfm/src/array.jl:223
 [2] top-level scope
   @ REPL[7]:1

I did try to inform the dimensions:

raster_t2m = Raster(t2m, (720, 360, 1))
ERROR: MethodError: no method matching _format(::Int64, ::Base.OneTo{Int64})
Closest candidates are:
 _format(::DimensionalData.Dimensions.LookupArrays.Explicit, ::Any, ::Any) at /home/lufla/.julia/packages/DimensionalData/MFtne/src/Dimensions/format.jl:99
 _format(::DimensionalData.Dimensions.LookupArrays.AutoLookup, ::AbstractRange) at /home/lufla/.julia/packages/DimensionalData/MFtne/src/Dimensions/format.jl:82
 _format(::Coord, ::AbstractRange) at /home/lufla/.julia/packages/DimensionalData/MFtne/src/Dimensions/coord.jl:79
 ...
Stacktrace:
[1] map
  @ ./tuple.jl:236 [inlined]
[2] format(dims::Tuple{Int64, Int64, Int64}, axes::Tuple{Base.OneTo{Int64}, Base.OneTo{Int64}, Base.OneTo{Int64}})
  @ DimensionalData.Dimensions ~/.julia/packages/DimensionalData/MFtne/src/Dimensions/format.jl:29
[3] format(dims::Tuple{Int64, Int64, Int64}, A::Array{Union{Missing, Float32}, 3})
  @ DimensionalData.Dimensions ~/.julia/packages/DimensionalData/MFtne/src/Dimensions/format.jl:25
[4] Raster(A::Array{Union{Missing, Float32}, 3}, dims::Tuple{Int64, Int64, Int64}; refdims::Tuple{}, name::Symbol, metadata::DimensionalData.Dimensions.LookupArrays.NoMetadata, missingval::Missing)
  @ Rasters ~/.julia/packages/Rasters/CrXfm/src/array.jl:213
[5] Raster(A::Array{Union{Missing, Float32}, 3}, dims::Tuple{Int64, Int64, Int64})
  @ Rasters ~/.julia/packages/Rasters/CrXfm/src/array.jl:213
[6] top-level scope
  @ REPL[11]:1

what I doing wrong?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions