Skip to content

Colorbar of a pyramid fails #85

@felixcremer

Description

@felixcremer

When I am trying to get the colorbar of a Pyramid this fails with the error below.

Maybe @asinghvi17 you have some pointers where I could best fix this:

julia>     data = rand(300,300);

julia>     dd = DimArray(data, (X(1:300), Y(1:300)))
┌ 300×300 DimArray{Float64, 2} ┐
├──────────────────────────────┴───────────────────── dims ┐
   X Sampled{Int64} 1:300 ForwardOrdered Regular Points,
   Y Sampled{Int64} 1:300 ForwardOrdered Regular Points
└──────────────────────────────────────────────────────────┘
      1         2         3         4         5           297          298         299         300
                                                                                                 
 300    0.363112  0.540459  0.986404  0.400367  0.881563      0.0357517    0.882367    0.622528    0.554574

julia>     pyramid = PS.Pyramid(dd)
reducefunc = Statistics.mean  skipmissing
eltype(ras) = Float64
┌ Warning: The selected optimization algorithm requires second order derivatives, but `SecondOrder` ADtype was not provided. 
│         So a `SecondOrder` with ADTypes.AutoForwardDiff() for both inner and outer will be created, this can be suboptimal and not work in some cases so 
│         an explicit `SecondOrder` ADtype is recommended.
└ @ OptimizationBase ~/.julia/packages/OptimizationBase/ivotG/src/cache.jl:49300×300 Pyramid{Float64, 2} ┐
├─────────────────────────────┴────────────────────── dims ┐
   X Sampled{Int64} 1:300 ForwardOrdered Regular Points,
   Y Sampled{Int64} 1:300 ForwardOrdered Regular Points
├──────────────────────────────────────────────── metadata ┤
  Dict{Any, Any} with 1 entry:
  "resampling_method" => "mean_skipmissing"
├─────────────────────────────────────────── pyramidlevels ┤
  Number of levels: 1 
   (300, 300)
   (150, 150)
└──────────────────────────────────────────────────────────┘

julia>     fig, axis, h = plot(pyramid)

julia> Colorbar(fig[1,2], h) # This fails with printing all the data in the pyramid
 for func /home/fcremer/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:1011
Stacktrace:
  [1] error(s::String)
    @ Base ./error.jl:44
  [2] ComputePipeline.TypedEdge(edge::ComputePipeline.ComputeEdge{…}, f::ComputePipeline.MapFunctionWrapper{…}, inputs::@NamedTuple{})
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:140
  [3] ComputePipeline.TypedEdge(edge::ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph})
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:120
  [4] (::ComputePipeline.var"#resolve!##4#resolve!##5"{ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph}})()
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:664
  [5] lock(f::ComputePipeline.var"#resolve!##4#resolve!##5"{ComputePipeline.ComputeEdge{}}, l::ReentrantLock)
    @ Base ./lock.jl:335
  [6] resolve!(edge::ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph})
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:659
  [7] _resolve!(computed::ComputePipeline.Computed)
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:652
  [8] foreach
    @ ./abstractarray.jl:3188 [inlined]
  [9] (::ComputePipeline.var"#resolve!##4#resolve!##5"{ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph}})()
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:661
 [10] lock(f::ComputePipeline.var"#resolve!##4#resolve!##5"{ComputePipeline.ComputeEdge{}}, l::ReentrantLock)
    @ Base ./lock.jl:335
 [11] resolve!(edge::ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph})
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:659
 [12] _resolve!(computed::ComputePipeline.Computed)
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:652
 [13] foreach
    @ ./abstractarray.jl:3188 [inlined]
 [14] (::ComputePipeline.var"#resolve!##4#resolve!##5"{ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph}})()
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:661
 [15] lock(f::ComputePipeline.var"#resolve!##4#resolve!##5"{ComputePipeline.ComputeEdge{}}, l::ReentrantLock)
    @ Base ./lock.jl:335
 [16] resolve!(edge::ComputePipeline.ComputeEdge{ComputePipeline.ComputeGraph})
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:659
 [17] _resolve!(computed::ComputePipeline.Computed)
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:652
 [18] resolve!(computed::ComputePipeline.Computed)
    @ ComputePipeline ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:644
 [19] getindex
    @ ~/.julia/packages/ComputePipeline/VcOdn/src/ComputePipeline.jl:563 [inlined]
 [20] get_colormapping(plot::Heatmap{Tuple{Pyramid{…}}}, attr::ComputePipeline.ComputeGraph)
    @ Makie ~/.julia/packages/Makie/TOy8O/src/compute-plots.jl:1027
 [21] get_colormapping
    @ ~/.julia/packages/Makie/TOy8O/src/compute-plots.jl:1025 [inlined]
 [22] extract_colormap
    @ ~/.julia/packages/Makie/TOy8O/src/makielayout/blocks/colorbar.jl:53 [inlined]
 [23] extract_colormap_recursive(plot::Heatmap{Tuple{Pyramid{…}}})
    @ Makie ~/.julia/packages/Makie/TOy8O/src/makielayout/blocks/colorbar.jl:103
 [24] Colorbar(fig_or_scene::GridPosition, plot::Heatmap{Tuple{Pyramid{…}}}; kwargs::@Kwargs{})
    @ Makie ~/.julia/packages/Makie/TOy8O/src/makielayout/blocks/colorbar.jl:123
 [25] Colorbar(fig_or_scene::GridPosition, plot::Heatmap{Tuple{Pyramid{…}}})
    @ Makie ~/.julia/packages/Makie/TOy8O/src/makielayout/blocks/colorbar.jl:121
 [26] top-level scope
    @ REPL[248]:1
Some type information was truncated. Use `show(err)` to see complete types.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions