Fix ribbons specified as two-tuples.

This commit is contained in:
yha 2019-08-13 15:27:01 +03:00
parent 3dcc7e5556
commit b2707f5c8a

View File

@ -35,6 +35,20 @@ convertToAnyVector(v::AVec) = vcat((convertToAnyVector(vi) for vi in v)...)
# Matrix is split into columns # Matrix is split into columns
convertToAnyVector(v::AMat{<:DataPoint}) = Any[prepareSeriesData(v[:,i]) for i in 1:size(v,2)] convertToAnyVector(v::AMat{<:DataPoint}) = Any[prepareSeriesData(v[:,i]) for i in 1:size(v,2)]
# --------------------------------------------------------------------
# Fillrane & ribbons
process_fillrange(range::Number) = [range]
process_fillrange(range) = convertToAnyVector(range)
process_ribbon(ribbon::Number) = [ribbon]
process_ribbon(ribbon) = convertToAnyVector(ribbon)
# ribbon as a tuple: (lower_ribbons, upper_ribbons)
process_ribbon(ribbon::Tuple{Any,Any}) = collect(zip(convertToAnyVector(ribbon[1]),
convertToAnyVector(ribbon[2])))
# -------------------------------------------------------------------- # --------------------------------------------------------------------
# TODO: can we avoid the copy here? one error that crops up is that mapping functions over the same array # TODO: can we avoid the copy here? one error that crops up is that mapping functions over the same array
@ -102,19 +116,11 @@ struct SliceIt end
fr = pop!(plotattributes, :fillrange, nothing) fr = pop!(plotattributes, :fillrange, nothing)
fillranges = if typeof(fr) <: Number fillranges = process_fillrange(fr)
[fr]
else
convertToAnyVector(fr)
end
mf = length(fillranges) mf = length(fillranges)
rib = pop!(plotattributes, :ribbon, nothing) rib = pop!(plotattributes, :ribbon, nothing)
ribbons = if typeof(rib) <: Number ribbons = process_ribbon(rib)
[rib]
else
convertToAnyVector(rib)
end
mr = length(ribbons) mr = length(ribbons)
# @show zs # @show zs