<s> """<STR_LIT>""" <EOL> from __future__ import absolute_import <EOL> from . . model import Model <EOL> from . . core . properties import abstract <EOL> from . . core . properties import Int , Float , Seq , Instance , Override <EOL> @ abstract <EOL> class Ticker ( Model ) : <EOL> """<STR_LIT>""" <EOL> @ abstract <EOL> class ContinuousTicker ( Ticker ) : <EOL> """<STR_LIT>""" <EOL> num_minor_ticks = Int ( <NUM_LIT:5> , help = """<STR_LIT>""" ) <EOL> desired_num_ticks = Int ( <NUM_LIT:6> , help = """<STR_LIT>""" ) <EOL> class FixedTicker ( ContinuousTicker ) : <EOL> """<STR_LIT>""" <EOL> ticks = Seq ( Float , default = [ ] , help = """<STR_LIT>""" ) <EOL> class AdaptiveTicker ( ContinuousTicker ) : <EOL> """<STR_LIT>""" <EOL> base = Float ( <NUM_LIT> , help = """<STR_LIT>""" ) <EOL> mantissas = Seq ( Float , [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:5> ] , help = """<STR_LIT>""" ) <EOL> min_interval = Float ( <NUM_LIT:0.0> , help = """<STR_LIT>""" ) <EOL> max_interval = Float ( help = """<STR_LIT>""" ) <EOL> class CompositeTicker ( ContinuousTicker ) : <EOL> """<STR_LIT>""" <EOL> tickers = Seq ( Instance ( Ticker ) , default = [ ] , help = """<STR_LIT>""" ) <EOL> class SingleIntervalTicker ( ContinuousTicker ) : <EOL> """<STR_LIT>""" <EOL> interval = Float ( help = """<STR_LIT>""" ) <EOL> class DaysTicker ( SingleIntervalTicker ) : <EOL> """<STR_LIT>""" <EOL> days = Seq ( Int , default = [ ] , help = """<STR_LIT>""" ) <EOL> class MonthsTicker ( SingleIntervalTicker ) : <EOL> """<STR_LIT>""" <EOL> months = Seq ( Int , default = [ ] , help = """<STR_LIT>""" ) <EOL> class YearsTicker ( SingleIntervalTicker ) : <EOL> """<STR_LIT>""" <EOL> class BasicTicker ( AdaptiveTicker ) : <EOL> """<STR_LIT>""" <EOL> class LogTicker ( AdaptiveTicker ) : <EOL> """<STR_LIT>""" <EOL> mantissas = Override ( default = [ <NUM_LIT:1> , <NUM_LIT:5> ] ) <EOL> class CategoricalTicker ( Ticker ) : <EOL> """<STR_LIT>""" <EOL> ONE_MILLI = <NUM_LIT:1.0> <EOL> ONE_SECOND = <NUM_LIT> <EOL> ONE_MINUTE = <NUM_LIT> * ONE_SECOND <EOL> ONE_HOUR = <NUM_LIT> * ONE_MINUTE <EOL> ONE_DAY = <NUM_LIT> * ONE_HOUR <EOL> ONE_MONTH = <NUM_LIT:30> * ONE_DAY <EOL> ONE_YEAR = <NUM_LIT> * ONE_DAY <EOL> class DatetimeTicker ( CompositeTicker ) : <EOL> """<STR_LIT>""" <EOL> num_minor_ticks = Override ( default = <NUM_LIT:0> ) <EOL> tickers = Override ( default = lambda : [ <EOL> AdaptiveTicker ( <EOL> mantissas = [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:5> ] , <EOL> base = <NUM_LIT:10> , <EOL> min_interval = <NUM_LIT:0> , <EOL> max_interval = <NUM_LIT> * ONE_MILLI , <EOL> num_minor_ticks = <NUM_LIT:0> <EOL> ) , <EOL> AdaptiveTicker ( <EOL> mantissas = [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:5> , <NUM_LIT:10> , <NUM_LIT:15> , <NUM_LIT:20> , <NUM_LIT:30> ] , <EOL> base = <NUM_LIT> , <EOL> min_interval = ONE_SECOND , <EOL> max_interval = <NUM_LIT:30> * ONE_MINUTE , <EOL> num_minor_ticks = <NUM_LIT:0> <EOL> ) , <EOL> AdaptiveTicker ( <EOL> mantissas = [ <NUM_LIT:1> , <NUM_LIT:2> , <NUM_LIT:4> , <NUM_LIT:6> , <NUM_LIT:8> , <NUM_LIT:12> ] , <EOL> base = <NUM_LIT> , <EOL> min_interval = ONE_HOUR , <EOL> max_interval = <NUM_LIT:12> * ONE_HOUR , <EOL> num_minor_ticks = <NUM_LIT:0> <EOL> ) , <EOL> DaysTicker ( days = list ( range ( <NUM_LIT:1> , <NUM_LIT:32> ) ) ) , <EOL> DaysTicker ( days = list ( range ( <NUM_LIT:1> , <NUM_LIT> , <NUM_LIT:3> ) ) ) , <EOL> DaysTicker ( days = [ <NUM_LIT:1> , <NUM_LIT:8> , <NUM_LIT:15> , <NUM_LIT> ] ) , <EOL> DaysTicker ( days = [ <NUM_LIT:1> , <NUM_LIT:15> ] ) , <EOL> MonthsTicker ( months = list ( range ( <NUM_LIT:0> , <NUM_LIT:12> , <NUM_LIT:1> ) ) ) , <EOL> MonthsTicker ( months = list ( range ( <NUM_LIT:0> , <NUM_LIT:12> , <NUM_LIT:2> ) ) ) , <EOL> MonthsTicker ( months = list ( range ( <NUM_LIT:0> , <NUM_LIT:12> , <NUM_LIT:4> ) ) ) , <EOL> MonthsTicker ( months = list ( range ( <NUM_LIT:0> , <NUM_LIT:12> , <NUM_LIT:6> ) ) ) , <EOL> YearsTicker ( ) , <EOL> ] ) </s>
