11module Colorbars
22
3- export colorbar_style, get_clims, update_clims, hascolorbar
3+ export colorbar_style, update_clims, hascolorbar
44export get_colorbar_ticks, _update_subplot_colorbars
55
6- import .. Commons: Commons, NaNMath, ignorenan_extrema, get_clims
6+ import .. Commons
77import .. Surfaces
8+ import .. NaNMath
9+ import .. Ticks
810
911using .. Subplots: Subplot, series_list
10- using .. Ticks: _transform_ticks
1112using .. DataSeries
12- using .. Ticks
1313
14- # these functions return an operator for use in `get_clims(::Seres, op)`
15- process_clims(lims:: Tuple{<:Number, <:Number} ) =
16- (zlims -> ifelse.(isfinite.(lims), lims, zlims)) ∘ ignorenan_extrema
17- process_clims(s:: Union{Symbol, Nothing, Missing} ) = ignorenan_extrema
18- # don't specialize on ::Function otherwise python functions won't work
19- process_clims(f) = f
20- get_clims(series:: Series ):: Tuple{Float64, Float64} =
14+ Commons. get_clims(series:: Series ):: Tuple{Float64, Float64} =
2115 haskey(series. plotattributes, :clims_calculated) ?
2216 series[:clims_calculated]:: Tuple{Float64, Float64} : update_clims(series)
2317
24- get_clims(sp:: Subplot ):: Tuple{Float64, Float64} =
18+ Commons . get_clims(sp:: Subplot ):: Tuple{Float64, Float64} =
2519 haskey(sp. attr, :clims_calculated) ? sp[:clims_calculated] : update_clims(sp)
2620
27- get_clims(sp:: Subplot , series:: Series ):: Tuple{Float64, Float64} =
28- series[:colorbar_entry] ? get_clims(sp) : get_clims(series)
21+ Commons. get_clims(sp:: Subplot , series:: Series ):: Tuple{Float64, Float64} =
22+ series[:colorbar_entry] ? Commons. get_clims(sp) : Commons. get_clims(series)
23+
24+ # these functions return an operator for use in `update_clims`
25+ process_clims(lims:: Tuple{<:Number, <:Number} ) =
26+ (zlims -> ifelse.(isfinite.(lims), lims, zlims)) ∘ Commons. ignorenan_extrema
27+ process_clims(s:: Union{Symbol, Nothing, Missing} ) = Commons. ignorenan_extrema
28+ # don't specialize on ::Function otherwise python functions won't work
29+ process_clims(f) = f
2930
3031function update_clims(sp:: Subplot , op = process_clims(sp[:clims])):: Tuple{Float64, Float64}
3132 zmin, zmax = Inf , - Inf
@@ -52,7 +53,7 @@ function update_clims(
5253 series:: Series ,
5354 op = process_clims(sp[:clims]),
5455 ):: Tuple{Float64, Float64}
55- zmin, zmax = get_clims(sp)
56+ zmin, zmax = Commons . get_clims(sp)
5657 old_zmin, old_zmax = zmin, zmax
5758 if series[:colorbar_entry]:: Bool
5859 zmin, zmax = _update_clims(zmin, zmax, update_clims(series, op). .. )
@@ -71,7 +72,7 @@ Finds the limits for the colorbar by taking the "z-values" for the series and pa
7172which must return the tuple `(zmin, zmax)`. The default op is the extrema of the finite
7273values of the input. The value is stored as a series property, which is retrieved by `get_clims`.
7374"""
74- function update_clims(series:: Series , op = ignorenan_extrema):: Tuple{Float64, Float64}
75+ function update_clims(series:: Series , op = Commons . ignorenan_extrema):: Tuple{Float64, Float64}
7576 zmin, zmax = Inf , - Inf
7677
7778 # keeping this unrolled has higher performance
@@ -127,10 +128,10 @@ hascolorbar(sp::Subplot) =
127128
128129function get_colorbar_ticks(sp:: Subplot ; update = true , formatter = sp[:colorbar_formatter])
129130 if update || ! haskey(sp. attr, :colorbar_optimized_ticks)
130- ticks = _transform_ticks(sp[:colorbar_ticks], sp[:colorbar_title])
131+ ticks = Ticks . _transform_ticks(sp[:colorbar_ticks], sp[:colorbar_title])
131132 cvals = sp[:colorbar_continuous_values]
132133 dvals = sp[:colorbar_discrete_values]
133- clims = get_clims(sp)
134+ clims = Commons . get_clims(sp)
134135 scale = sp[:colorbar_scale]
135136 sp. attr[:colorbar_optimized_ticks] =
136137 Commons. get_ticks(ticks, cvals, dvals, clims, scale, formatter)
0 commit comments