We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
yscale=log10
lines throws a few different errors under some conditions when data is closely spaced and axis = (; yscale=log10) is provided. For example,
lines
axis = (; yscale=log10)
julia> lines(1:3, 10000 .+ rand(3), axis = (; yscale=log10)) ERROR: Char × doesn't have a unicode superscript
julia> lines(1:3, 10000 .+ rand(3), axis = (; yscale=log10)) ERROR: Char × doesn't have a unicode superscript Stacktrace: [1] error(s::String) @ Base ./error.jl:33 [2] to_superscript @ ~/.julia/packages/UnicodeFun/QjvWn/src/sub_super_scripts.jl:166 [inlined] [3] to_superscript(io::IOBuffer, x::String) @ UnicodeFun ~/.julia/packages/UnicodeFun/QjvWn/src/sub_super_scripts.jl:13 [4] (::UnicodeFun.var"#7#8"{String})(io::IOBuffer) @ UnicodeFun ~/.julia/packages/UnicodeFun/QjvWn/src/sub_super_scripts.jl:9 [5] sprint(::Function; context::Nothing, sizehint::Int64) @ Base ./strings/io.jl:105 [6] sprint @ ./strings/io.jl:101 [inlined] [7] to_superscript @ ~/.julia/packages/UnicodeFun/QjvWn/src/sub_super_scripts.jl:9 [inlined] [8] _broadcast_getindex_evalf @ ./broadcast.jl:648 [inlined] [9] _broadcast_getindex @ ./broadcast.jl:621 [inlined] [10] _getindex @ ./broadcast.jl:645 [inlined] [11] _getindex @ ./broadcast.jl:644 [inlined] [12] _broadcast_getindex @ ./broadcast.jl:620 [inlined] [13] getindex @ ./broadcast.jl:575 [inlined] [14] macro expansion @ ./broadcast.jl:984 [inlined] [15] macro expansion @ ./simdloop.jl:77 [inlined] [16] copyto! @ ./broadcast.jl:983 [inlined] [17] copyto! @ ./broadcast.jl:936 [inlined] [18] copy @ ./broadcast.jl:908 [inlined] [19] materialize @ ./broadcast.jl:883 [inlined] [20] get_ticks(l::LogTicks{WilkinsonTicks}, scale::typeof(log10), #unused#::MakieCore.Automatic, vmin::Float32, vmax::Float32) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/lineaxis.jl:506 [21] get_ticks(#unused#::MakieCore.Automatic, scale::typeof(log10), any_formatter::MakieCore.Automatic, vmin::Float32, vmax::Float32) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/lineaxis.jl:496 [22] (::Makie.MakieLayout.var"#177#208")(::Tuple{Float32, Tuple{Float32, Float32}, Bool}, limits::Tuple{Float32, Float32}, ticks::MakieCore.Automatic, tickformat::MakieCore.Automatic, scale::Function) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/lineaxis.jl:187 [23] (::Observables.MapUpdater{Makie.MakieLayout.var"#177#208", Tuple{Vector{Float64}, Vector{String}}})(::Tuple{Float32, Tuple{Float32, Float32}, Bool}, ::Vararg{Any, N} where N) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:372 [24] (::Observables.OnUpdate{Observables.MapUpdater{Makie.MakieLayout.var"#177#208", Tuple{Vector{Float64}, Vector{String}}}, Tuple{Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}, Observable{Any}, Observable{Any}, Observable{Any}}})(#unused#::Tuple{Float32, Float32}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [25] #invokelatest#2 @ ./essentials.jl:708 [inlined] [26] invokelatest @ ./essentials.jl:706 [inlined] [27] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [28] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [29] (::Observables.var"#3#4"{Any, Observable{Any}})(value::Tuple{Float32, Float32}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:58 [30] #invokelatest#2 @ ./essentials.jl:708 [inlined] [31] invokelatest @ ./essentials.jl:706 [inlined] [32] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [33] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [34] (::Makie.MakieLayout.var"#254#285"{Observable{Tuple{Float32, Float32}}, Observable{Tuple{Float32, Float32}}})(lims::GeometryBasics.HyperRectangle{2, Float32}) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:207 [35] #invokelatest#2 @ ./essentials.jl:708 [inlined] [36] invokelatest @ ./essentials.jl:706 [inlined] [37] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [38] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [39] adjustlimits!(la::Axis) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:916 [40] #268 @ ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:447 [inlined] [41] (::Observables.OnUpdate{Makie.MakieLayout.var"#268#301"{Axis}, Tuple{Observable{GeometryBasics.HyperRectangle{2, Int64}}, Observable{GeometryBasics.HyperRectangle{2, Float32}}}})(#unused#::GeometryBasics.HyperRectangle{2, Float32}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [42] #invokelatest#2 @ ./essentials.jl:708 [inlined] [43] invokelatest @ ./essentials.jl:706 [inlined] [44] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [45] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [46] reset_limits!(ax::Axis; xauto::Bool, yauto::Bool, zauto::Bool) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:547 [47] reset_limits! @ ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:472 [inlined] [48] plot!(::Axis, ::Type{Lines{ArgType} where ArgType}, ::Attributes, ::UnitRange{Int64}, ::Vararg{Any, N} where N; kw_attributes::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:664 [49] plot!(::Axis, ::Type{Lines{ArgType} where ArgType}, ::Attributes, ::UnitRange{Int64}, ::Vector{Float64}) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:653 [50] plot(::Type{Lines{ArgType} where ArgType}, ::UnitRange{Int64}, ::Vararg{Any, N} where N; axis::NamedTuple{(:yscale,), Tuple{typeof(log10)}}, figure::NamedTuple{(), Tuple{}}, kw_attributes::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/figureplotting.jl:38 [51] lines(::UnitRange{Int64}, ::Vararg{Any, N} where N; attributes::Base.Iterators.Pairs{Symbol, NamedTuple{(:yscale,), Tuple{typeof(log10)}}, Tuple{Symbol}, NamedTuple{(:axis,), Tuple{NamedTuple{(:yscale,), Tuple{typeof(log10)}}}}}) @ MakieCore ~/.julia/packages/MakieCore/S8PkO/src/recipes.jl:31
However, this works:
julia> lines(1:3, 1000 .+ rand(3), axis = (; yscale=log10))
as does
julia> lines(1:3, 10000 .+ rand(3))
and
julia> lines(1:3, 10000000 .+ rand(3), axis = (; yscale=log10))
So this error only occurs with axis = (; yscale=log10) and for intermediate parameters.
In the course of preparing this MWE I also found another error:
julia> lines(1:10, 1 .+ 1e-9 * rand(10), axis = (; yscale=log10)) ERROR: Invalid text boundingbox
But I don't know if it's related.
The text was updated successfully, but these errors were encountered:
Fixed in #1487
Sorry, something went wrong.
Invalid text boundingbox error
TimeSeries
No branches or pull requests
lines
throws a few different errors under some conditions when data is closely spaced andaxis = (; yscale=log10)
is provided. For example,Click to see the whole stacktrace.
However, this works:
as does
and
So this error only occurs with
axis = (; yscale=log10)
and for intermediate parameters.In the course of preparing this MWE I also found another error:
Click to see the whole stacktrace!
```julia julia> lines(1:10, 1 .+ 1e-9 * rand(10), axis = (; yscale=log10)) ERROR: Invalid text boundingbox Stacktrace: [1] error(s::String) @ Base ./error.jl:33 [2] boundingbox(glyphcollection::Makie.GlyphCollection, position::Point{3, Float32}, rotation::Quaternionf0) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/boundingbox.jl:121 [3] (::Makie.var"#725#726")(layout::Makie.GlyphCollection, pos::Point{3, Float32}, rot::Quaternionf0) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/boundingbox.jl:133 [4] broadcast_foreach(::Function, ::Vector{Makie.GlyphCollection}, ::Vararg{Any, N} where N) @ Makie ~/.julia/packages/Makie/NL7Xw/src/utilities/utilities.jl:176 [5] boundingbox(layouts::Vector{Makie.GlyphCollection}, positions::Vector{Point{3, Float32}}, rotations::Quaternionf0) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/boundingbox.jl:131 [6] boundingbox(x::MakieCore.Text{Tuple{Vector{Makie.GlyphCollection}}}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/boundingbox.jl:152 [7] atomic_limits(x::MakieCore.Text{Tuple{Vector{Makie.GlyphCollection}}}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/data_limits.jl:128 [8] data_limits(x::MakieCore.Text{Tuple{Vector{Makie.GlyphCollection}}}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/data_limits.jl:9 [9] data_limits(plots::Vector{AbstractPlot}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/data_limits.jl:156 --- the last 2 lines are repeated 1 more time --- [12] data_limits @ ~/.julia/packages/Makie/NL7Xw/src/layouting/data_limits.jl:9 [inlined] [13] raw_boundingbox @ ~/.julia/packages/Makie/NL7Xw/src/layouting/boundingbox.jl:6 [inlined] [14] boundingbox(x::MakieCore.Text{Tuple{Vector{Tuple{AbstractString, Point{2, Float32}}}}}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/layouting/boundingbox.jl:39 [15] (::Makie.MakieLayout.var"#170#201"{Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}})(::Vector{Tuple{AbstractString, Point{2, Float32}}}, ::Vararg{Any, N} where N) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/lineaxis.jl:93 [16] (::Observables.MapUpdater{Makie.MakieLayout.var"#170#201"{Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}}, Float32})(::Vector{Tuple{AbstractString, Point{2, Float32}}}, ::Vararg{Any, N} where N) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:372 [17] (::Observables.OnUpdate{Observables.MapUpdater{Makie.MakieLayout.var"#170#201"{Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}}, Float32}, Tuple{Observable{Vector{Tuple{AbstractString, Point{2, Float32}}}}, Observable{Any}, Observable{Any}, Observable{Any}, Observable{Any}}})(#unused#::Vector{Tuple{AbstractString, Point{2, Float32}}}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [18] #invokelatest#2 @ ./essentials.jl:708 [inlined] [19] invokelatest @ ./essentials.jl:706 [inlined] [20] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [21] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [22] (::Makie.MakieLayout.var"#191#222"{Observable{Vector{Point{2, Float32}}}, Observable{Vector{Float32}}, Observable{Float32}, Observable{Vector{Tuple{AbstractString, Point{2, Float32}}}}, Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}, Observable{Any}})(tickstrings::Vector{AbstractString}, labelgap::Float32, flipped::Bool) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/lineaxis.jl:301 [23] (::Observables.OnUpdate{Makie.MakieLayout.var"#191#222"{Observable{Vector{Point{2, Float32}}}, Observable{Vector{Float32}}, Observable{Float32}, Observable{Vector{Tuple{AbstractString, Point{2, Float32}}}}, Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}, Observable{Any}}, Tuple{Observable{Vector{AbstractString}}, Observable{Float32}, Observable{Any}}})(#unused#::Vector{AbstractString}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [24] #invokelatest#2 @ ./essentials.jl:708 [inlined] [25] invokelatest @ ./essentials.jl:706 [inlined] [26] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [27] setindex!(observable::Observable{Vector{AbstractString}}, val::Vector{String}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [28] (::Makie.MakieLayout.var"#178#209"{Observable{Vector{AbstractString}}, Observable{Vector{Point{2, Float32}}}, Observable{Vector{Float32}}, Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}, Attributes})(tickvalues_labels_unfiltered::Tuple{Vector{Float64}, Vector{String}}, reversed::Bool) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/lineaxis.jl:232 [29] (::Observables.OnUpdate{Makie.MakieLayout.var"#178#209"{Observable{Vector{AbstractString}}, Observable{Vector{Point{2, Float32}}}, Observable{Vector{Float32}}, Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}, Attributes}, Tuple{Observable{Tuple{Vector{Float64}, Vector{String}}}, Observable{Any}}})(#unused#::Tuple{Vector{Float64}, Vector{String}}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [30] #invokelatest#2 @ ./essentials.jl:708 [inlined] [31] invokelatest @ ./essentials.jl:706 [inlined] [32] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [33] setindex!(observable::Observable{Tuple{Vector{Float64}, Vector{String}}}, val::Tuple{Vector{Float64}, Vector{String}}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [34] (::Observables.MapUpdater{Makie.MakieLayout.var"#177#208", Tuple{Vector{Float64}, Vector{String}}})(::Tuple{Float32, Tuple{Float32, Float32}, Bool}, ::Vararg{Any, N} where N) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:372 [35] (::Observables.OnUpdate{Observables.MapUpdater{Makie.MakieLayout.var"#177#208", Tuple{Vector{Float64}, Vector{String}}}, Tuple{Observable{Tuple{Float32, Tuple{Float32, Float32}, Bool}}, Observable{Any}, Observable{Any}, Observable{Any}, Observable{Any}}})(#unused#::Tuple{Float32, Float32}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [36] #invokelatest#2 @ ./essentials.jl:708 [inlined] [37] invokelatest @ ./essentials.jl:706 [inlined] [38] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [39] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [40] (::Observables.var"#3#4"{Any, Observable{Any}})(value::Tuple{Float32, Float32}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:58 [41] #invokelatest#2 @ ./essentials.jl:708 [inlined] [42] invokelatest @ ./essentials.jl:706 [inlined] [43] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [44] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [45] (::Makie.MakieLayout.var"#254#285"{Observable{Tuple{Float32, Float32}}, Observable{Tuple{Float32, Float32}}})(lims::GeometryBasics.HyperRectangle{2, Float32}) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:207 [46] #invokelatest#2 @ ./essentials.jl:708 [inlined] [47] invokelatest @ ./essentials.jl:706 [inlined] [48] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [49] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [50] adjustlimits!(la::Axis) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:916 [51] #268 @ ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:447 [inlined] [52] (::Observables.OnUpdate{Makie.MakieLayout.var"#268#301"{Axis}, Tuple{Observable{GeometryBasics.HyperRectangle{2, Int64}}, Observable{GeometryBasics.HyperRectangle{2, Float32}}}})(#unused#::GeometryBasics.HyperRectangle{2, Float32}) @ Observables ~/.julia/packages/Observables/OFj0u/src/Observables.jl:334 [53] #invokelatest#2 @ ./essentials.jl:708 [inlined] [54] invokelatest @ ./essentials.jl:706 [inlined] [55] notify @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:88 [inlined] [56] setindex! @ ~/.julia/packages/Observables/OFj0u/src/Observables.jl:248 [inlined] [57] reset_limits!(ax::Axis; xauto::Bool, yauto::Bool, zauto::Bool) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:547 [58] reset_limits! @ ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:472 [inlined] [59] plot!(::Axis, ::Type{Lines{ArgType} where ArgType}, ::Attributes, ::UnitRange{Int64}, ::Vararg{Any, N} where N; kw_attributes::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:664 [60] plot!(::Axis, ::Type{Lines{ArgType} where ArgType}, ::Attributes, ::UnitRange{Int64}, ::Vector{Float64}) @ Makie.MakieLayout ~/.julia/packages/Makie/NL7Xw/src/makielayout/layoutables/axis.jl:653 [61] plot(::Type{Lines{ArgType} where ArgType}, ::UnitRange{Int64}, ::Vararg{Any, N} where N; axis::NamedTuple{(:yscale,), Tuple{typeof(log10)}}, figure::NamedTuple{(), Tuple{}}, kw_attributes::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) @ Makie ~/.julia/packages/Makie/NL7Xw/src/figureplotting.jl:38 [62] lines(::UnitRange{Int64}, ::Vararg{Any, N} where N; attributes::Base.Iterators.Pairs{Symbol, NamedTuple{(:yscale,), Tuple{typeof(log10)}}, Tuple{Symbol}, NamedTuple{(:axis,), Tuple{NamedTuple{(:yscale,), Tuple{typeof(log10)}}}}}) @ MakieCore ~/.julia/packages/MakieCore/S8PkO/src/recipes.jl:31 ```But I don't know if it's related.
The text was updated successfully, but these errors were encountered: