-
-
Notifications
You must be signed in to change notification settings - Fork 361
Closed
Description
I'm trying to make a Makie widget for visualising a collection of data in my work. However, I'm running into this truncation error very frequently, and it's making it hard if not impossibly to actually interact with this widget.
To give you an idea of the complexity of my widget, here's a screenshot:
There are a lot of observables tieing various bits of this together.
Here's the stacktrace of the error:
Error in callback:
InexactError: trunc(UInt8, 256)
Stacktrace:
[1] throw_inexacterror(f::Symbol, #unused#::Type{UInt8}, val::Int64)
@ Core ./boot.jl:612
[2] checked_trunc_uint
@ ./boot.jl:642 [inlined]
[3] toUInt8
@ ./boot.jl:704 [inlined]
[4] UInt8
@ ./boot.jl:764 [inlined]
[5] convert
@ ./number.jl:7 [inlined]
[6] cvt1
@ ./essentials.jl:343 [inlined]
[7] ntuple
@ ./ntuple.jl:49 [inlined]
[8] convert
@ ./essentials.jl:344 [inlined]
[9] push!
@ ./array.jl:994 [inlined]
[10] #53
@ ~/.julia/packages/GLMakie/vwLnZ/src/screen.jl:259 [inlined]
[11] get!(default::GLMakie.var"#53#55"{GLMakie.Screen, Scene}, h::Dict{WeakRef, UInt8}, key::WeakRef)
@ Base ./dict.jl:464
[12] push!(screen::GLMakie.Screen, scene::Scene, robj::GLMakie.GLAbstraction.RenderObject{GLMakie.GLAbstraction.StandardPrerender})
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/screen.jl:257
[13] cached_robj!(robj_func::GLMakie.var"#137#148"{Scene, MakieCore.Text{Tuple{Makie.GlyphCollection}}}, screen::GLMakie.Screen, scene::Scene, x::MakieCore.Text{Tuple{Makie.GlyphCollection}})
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/drawing_primitives.jl:113
[14] draw_atomic
@ ~/.julia/packages/GLMakie/vwLnZ/src/drawing_primitives.jl:304 [inlined]
[15] insert!
@ ~/.julia/packages/GLMakie/vwLnZ/src/drawing_primitives.jl:121 [inlined]
[16] (::GLMakie.var"#113#114"{GLMakie.Screen, Scene})(x::MakieCore.Text{Tuple{Makie.GlyphCollection}})
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/drawing_primitives.jl:126
[17] foreach(f::GLMakie.var"#113#114"{GLMakie.Screen, Scene}, itr::Vector{AbstractPlot})
@ Base ./abstractarray.jl:2694
[18] insert!(screen::GLMakie.Screen, scene::Scene, x::Combined)
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/drawing_primitives.jl:123
[19] push!(scene::Scene, plot::MakieCore.Text{Tuple{String}})
@ Makie ~/.julia/packages/Makie/fEZv2/src/scenes.jl:409
[20] plot!(scene::Scene, P::Type{MakieCore.Text{Tuple{String}}}, attributes::Attributes, input::Tuple{Observable{Any}}, args::Observable{Tuple{String}})
@ Makie ~/.julia/packages/Makie/fEZv2/src/interfaces.jl:403
[21] plot!(scene::Scene, P::Type{MakieCore.Text}, attributes::Attributes, args::Observable{Any}; kw_attributes::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Makie ~/.julia/packages/Makie/fEZv2/src/interfaces.jl:320
[22] plot!
@ ~/.julia/packages/Makie/fEZv2/src/interfaces.jl:288 [inlined]
[23] #plot!#137
@ ~/.julia/packages/Makie/fEZv2/src/interfaces.jl:271 [inlined]
[24] #text!#52
@ ~/.julia/packages/MakieCore/oBlaS/src/recipes.jl:37 [inlined]
[25] initialize_block!(l::Label)
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks/label.jl:11
[26] _block(::Type{Label}, ::Scene; bbox::Nothing, kwargs::Base.Pairs{Symbol, Any, NTuple{7, Symbol}, NamedTuple{(:text, :halign, :tellwidth, :textsize, :color, :padding, :visible), Tuple{String, Symbol, Bool, Observable{Any}, Observable{Any}, Observable{Any}, Observable{Any}}}})
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks.jl:395
[27] #_#38
@ ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks.jl:269 [inlined]
[28] #Label#552
@ ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks/label.jl:1 [inlined]
[29] _reassemble_menu(m::Menu, scene::Scene, selectionrect::Box, selectiontext::Label, allrects::Vector{Box}, alltexts::Vector{Label}, mouseeventhandles::Vector{Makie.MakieLayout.MouseEventHandle}, contentgrid::GridLayout, optionstrings::Base.RefValue{Vector{String}})
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks/menu.jl:257
[30] (::Makie.MakieLayout.var"#771#783"{Menu, Vector{Makie.MakieLayout.MouseEventHandle}, Vector{Label}, Vector{Box}, Label, Observable{String}, Base.RefValue{Vector{String}}, Box, GridLayout, Scene})(options::Vector{String})
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks/menu.jl:116
[31] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[32] invokelatest
@ ./essentials.jl:714 [inlined]
[33] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[34] setindex!(observable::Observable, val::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86
[35] #15
@ ~/.julia/packages/Observables/ynr7h/src/Observables.jl:393 [inlined]
[36] (::Observables.var"#callback#13"{Observables.var"#15#16"{Makie.MakieLayout.var"#53#54"{DataType}, Observable{Any}}, Tuple{Observable{Vector{String}}}})(x::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:339
[37] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[38] invokelatest
@ ./essentials.jl:714 [inlined]
[39] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[40] setindex!(observable::Observable, val::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86
[41] (::Observables.var"#15#16"{var"#43#63", Observable{Vector{String}}})(args::Vector{String})
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:393
--- the last 6 lines are repeated 1 more time ---
[48] (::Observables.var"#callback#13"{Observables.var"#15#16"{var"#42#62", Observable{Union{Nothing, Vector{String}}}}, Tuple{Observable{Union{Nothing, DataFrame}}, Observable{Union{Nothing, DataFrame}}}})(x::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:339
[49] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[50] invokelatest
@ ./essentials.jl:714 [inlined]
[51] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[52] setindex!(observable::Observable, val::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86
[53] #15
@ ~/.julia/packages/Observables/ynr7h/src/Observables.jl:393 [inlined]
[54] (::Observables.var"#callback#13"{Observables.var"#15#16"{var"#loadstats#60", Observable{Union{Nothing, DataFrame}}}, Tuple{Observable{Any}}})(x::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:339
[55] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[56] invokelatest
@ ./essentials.jl:714 [inlined]
[57] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[58] setindex!(observable::Observable, val::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86
[59] (::Makie.MakieLayout.var"#776#788"{Menu})(i::Int64)
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks/menu.jl:206
[60] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[61] invokelatest
@ ./essentials.jl:714 [inlined]
[62] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[63] setindex!(observable::Observable, val::Any)
@ Observables ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86
[64] (::Makie.MakieLayout.var"#793#797"{Menu, Vector{Box}, Box, Int64})(#unused#::MouseEvent)
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/blocks/menu.jl:316
[65] (::Makie.MakieLayout.var"#67#68"{Makie.MakieLayout.var"#793#797"{Menu, Vector{Box}, Box, Int64}})(event::MouseEvent)
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/mousestatemachine.jl:86
[66] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[67] invokelatest
@ ./essentials.jl:714 [inlined]
[68] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[69] setindex!
@ ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86 [inlined]
[70] (::Makie.MakieLayout.var"#137#139"{Scene, Base.RefValue{Bool}, Base.RefValue{Union{Nothing, Makie.Mouse.Button}}, Base.RefValue{Float64}, Base.RefValue{Float64}, Base.RefValue{Bool}, Base.RefValue{Bool}, Base.RefValue{Union{Nothing, Makie.Mouse.Button}}, Base.RefValue{Bool}, Base.RefValue{Point{2, Float32}}, Base.RefValue{Point{2, Float32}}, Base.RefValue{Makie.Mouse.Action}, Observable{MouseEvent}, Float64, Module})(event::Makie.MouseButtonEvent)
@ Makie.MakieLayout ~/.julia/packages/Makie/fEZv2/src/makielayout/mousestatemachine.jl:256
[71] #invokelatest#2
@ ./essentials.jl:716 [inlined]
[72] invokelatest
@ ./essentials.jl:714 [inlined]
[73] notify(observable::AbstractObservable)
@ Main /tmp/varppi/dataviewer.jl:43
[74] setindex!
@ ~/.julia/packages/Observables/ynr7h/src/Observables.jl:86 [inlined]
[75] (::GLMakie.var"#mousebuttons#82"{Observable{Makie.MouseButtonEvent}})(window::GLFW.Window, button::GLFW.MouseButton, action::GLFW.Action, mods::Int32)
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/events.jl:89
[76] _MouseButtonCallbackWrapper(window::GLFW.Window, button::GLFW.MouseButton, action::GLFW.Action, mods::Int32)
@ GLFW ~/.julia/packages/GLFW/BWxfF/src/callback.jl:43
[77] PollEvents
@ ~/.julia/packages/GLFW/BWxfF/src/glfw3.jl:620 [inlined]
[78] pollevents
@ ~/.julia/packages/GLMakie/vwLnZ/src/screen.jl:587 [inlined]
[79] fps_renderloop(screen::GLMakie.Screen, framerate::Float64)
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/rendering.jl:21
[80] renderloop(screen::GLMakie.Screen; framerate::Float64)
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/rendering.jl:48
[81] renderloop(screen::GLMakie.Screen)
@ GLMakie ~/.julia/packages/GLMakie/vwLnZ/src/rendering.jl:41
Metadata
Metadata
Assignees
Labels
No labels
