From b2707f5c8a0f5f4842bccced1d9529554f22cf5b Mon Sep 17 00:00:00 2001 From: yha Date: Tue, 13 Aug 2019 15:27:01 +0300 Subject: [PATCH 1/2] Fix ribbons specified as two-tuples. --- src/series.jl | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/series.jl b/src/series.jl index 023c7c4b..7928ba53 100644 --- a/src/series.jl +++ b/src/series.jl @@ -35,6 +35,20 @@ convertToAnyVector(v::AVec) = vcat((convertToAnyVector(vi) for vi in v)...) # Matrix is split into columns 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 @@ -102,19 +116,11 @@ struct SliceIt end fr = pop!(plotattributes, :fillrange, nothing) - fillranges = if typeof(fr) <: Number - [fr] - else - convertToAnyVector(fr) - end + fillranges = process_fillrange(fr) mf = length(fillranges) rib = pop!(plotattributes, :ribbon, nothing) - ribbons = if typeof(rib) <: Number - [rib] - else - convertToAnyVector(rib) - end + ribbons = process_ribbon(rib) mr = length(ribbons) # @show zs From 69e83ef89fe4ef855402e020fe950a6d82cef39f Mon Sep 17 00:00:00 2001 From: yha Date: Tue, 13 Aug 2019 17:05:36 +0300 Subject: [PATCH 2/2] Typo fix --- src/series.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/series.jl b/src/series.jl index 7928ba53..f3731fc9 100644 --- a/src/series.jl +++ b/src/series.jl @@ -36,7 +36,7 @@ convertToAnyVector(v::AVec) = vcat((convertToAnyVector(vi) for vi in v)...) convertToAnyVector(v::AMat{<:DataPoint}) = Any[prepareSeriesData(v[:,i]) for i in 1:size(v,2)] # -------------------------------------------------------------------- -# Fillrane & ribbons +# Fillranges & ribbons process_fillrange(range::Number) = [range]