Options
All
  • Public
  • Public/Protected
  • All
Menu

Class TimeTickStrategy<TProps>

Axis Tick Strategy that is designed for depicting time ranges between hundreds of hours to individual nanoseconds.

Axis values are interpreted as milliseconds, for example:

  • 0 -> 00:00:00
  • 1 000 -> 00:00:01
  • 3 600 000 -> 01:00:00
  • 1 -> 00:00:00.001
  • 0.001 -> 00:00:00.000001

Axis interval ranges supported by TimeTickStrategy:

  • Minimum: 100 nanoseconds (0.0001).
  • Maximum: 100 hours (8 640 000 000)

Note, that available axis interval ranges can be also limited by the type of Axis, refer to Axis documentation for more information.

Axis tick strategy is selected with Axis.setTickStrategy method:

 Axis.setTickStrategy(AxisTickStrategies.Time, (timeTicks) => timeTicks)

All configuration of automatically created ticks is done using the callback from setTickStrategy, see example below for the idea:

 // Specify TickStrategy and use callback to style automatic ticks.
 Axis.setTickStrategy(AxisTickStrategies.Time, (timeTicks) => timeTicks
     // All methods of `TimeTickStrategy` can be used here for styling ticks.
     .setMajorTickStyle((majorTicks) => majorTicks
         .setLabelFont((font) => font
             .setWeight('bold')
         )
     )
 )

All available strategies for automatic Axis ticks creation can be referenced via AxisTickStrategies.

Index

Methods

[Symbol.iterator]

  • [Symbol.iterator](): IterableIterator<[keyof TProps, TProps[keyof TProps]]>
  • Returns IterableIterator<[keyof TProps, TProps[keyof TProps]]>

asImmutable

  • asImmutable(): this
  • see

    Map#asImmutable

    Returns this

asMutable

  • asMutable(): this
  • see

    Map#asMutable

    Returns this

clear

  • clear(): this
  • Returns a new instance of this Record type with all values set to their default values.

    Returns this

delete

  • delete(key: K): this
  • Returns a new instance of this Record type with the value for the specific key set to its default value.

    alias

    remove

    Type parameters

    • K: keyof TProps

    Parameters

    • key: K

    Returns this

deleteIn

  • deleteIn(keyPath: Iterable<any>): this
  • alias

    removeIn

    Parameters

    • keyPath: Iterable<any>

    Returns this

equals

  • equals(other: any): boolean
  • Parameters

    • other: any

    Returns boolean

get

  • get(key: K, notSetValue?: any): TProps[K]
  • get(key: string, notSetValue: T): T
  • Returns the value associated with the provided key, which may be the default value defined when creating the Record factory function.

    If the requested key is not defined by this Record type, then notSetValue will be returned if provided. Note that this scenario would produce an error when using Flow or TypeScript.

    Type parameters

    • K: keyof TProps

    Parameters

    • key: K
    • notSetValue: any

    Returns TProps[K]

  • Type parameters

    • T

    Parameters

    • key: string
    • notSetValue: T

    Returns T

getCursorFormatter

  • Get cursor formatter of this TimeTickStrategy object.

    Returns FormattingFunction | undefined

    FormattingFunction as set by user, or undefined to indicate that the default time cursor formatting is configured.

getIn

  • getIn(keyPath: Iterable<any>): any
  • Parameters

    • keyPath: Iterable<any>

    Returns any

getMajorTickStyle

  • Get major tick style of this TimeTickStrategy object.

    Returns VisibleTicks

    Major tick style.

getMinorTickStyle

  • getMinorTickStyle(): TickStyle
  • Get minor tick style of this TimeTickStrategy object.

    Returns TickStyle

    Minor tick style.

getTimeOrigin

  • getTimeOrigin(): number | undefined
  • Get the timeOrigin of this TimeTickStrategy object.

    Returns number | undefined

    Current time origin milliseconds or undefined.

has

  • has(key: string): key
  • Parameters

    • key: string

    Returns key

hasIn

  • hasIn(keyPath: Iterable<any>): boolean
  • Parameters

    • keyPath: Iterable<any>

    Returns boolean

hashCode

  • hashCode(): number
  • Returns number

merge

  • merge(...collections: Array<Partial<TProps> | Iterable<[string, any]>>): this
  • Parameters

    • ...collections: Array<Partial<TProps> | Iterable<[string, any]>>

    Returns this

mergeDeep

  • mergeDeep(...collections: Array<Partial<TProps> | Iterable<[string, any]>>): this
  • Parameters

    • ...collections: Array<Partial<TProps> | Iterable<[string, any]>>

    Returns this

mergeDeepIn

  • mergeDeepIn(keyPath: Iterable<any>, ...collections: Array<any>): this
  • Parameters

    • keyPath: Iterable<any>
    • ...collections: Array<any>

    Returns this

mergeDeepWith

  • mergeDeepWith(merger: function, ...collections: Array<Partial<TProps> | Iterable<[string, any]>>): this
  • Parameters

    • merger: function
        • Parameters

          • oldVal: any
          • newVal: any
          • key: any

          Returns any

    • ...collections: Array<Partial<TProps> | Iterable<[string, any]>>

    Returns this

mergeIn

  • mergeIn(keyPath: Iterable<any>, ...collections: Array<any>): this
  • Parameters

    • keyPath: Iterable<any>
    • ...collections: Array<any>

    Returns this

mergeWith

  • mergeWith(merger: function, ...collections: Array<Partial<TProps> | Iterable<[string, any]>>): this
  • Parameters

    • merger: function
        • Parameters

          • oldVal: any
          • newVal: any
          • key: keyof TProps

          Returns any

    • ...collections: Array<Partial<TProps> | Iterable<[string, any]>>

    Returns this

remove

  • remove(key: K): this
  • Type parameters

    • K: keyof TProps

    Parameters

    • key: K

    Returns this

removeIn

  • removeIn(keyPath: Iterable<any>): this
  • Parameters

    • keyPath: Iterable<any>

    Returns this

set

  • set(key: K, value: TProps[K]): this
  • Type parameters

    • K: keyof TProps

    Parameters

    • key: K
    • value: TProps[K]

    Returns this

setCursorFormatter

  • Set cursor formatter for this TimeTickStrategy object.

    This will override the date time formatting used by:

    • Default cursor result table formatters.
    • Default cursor tick formatters along Axis which uses this TickStrategy.
    • Axis.formatValue method of the Axis which uses this TickStrategy.
     // Example syntax, custom cursor formatting.
     Axis.setTickStrategy(AxisTickStrategies.Time, (ticks) => ticks
         .setCursorFormatter((value, range, locale) =>
             value.toFixed(3)
         )
     )
    

    Parameters

    • formatter: FormattingFunction | undefined

      FormattingFunction or undefined to use default time cursor formatting.

    Returns this

    New TimeTickStrategy object.

setIn

  • setIn(keyPath: Iterable<any>, value: any): this
  • Parameters

    • keyPath: Iterable<any>
    • value: any

    Returns this

setMajorTickStyle

  • Construct a new TimeTickStrategy object based on this one, but with modified major tick style.

    Example usage:

    Set font of major ticks:

    Axis.setTickStrategy(
        AxisTickStrategies.Time,
        ( tickStrategy: TimeTickStrategy ) => tickStrategy
            .setMajorTickStyle(( tickStyle ) => tickStyle
                .setLabelFont(( font ) => font
                    .setWeight( 'bold' )
                )
            )
    )
    

    Parameters

    Returns this

    New TimeTickStrategy object.

setMinorTickStyle

  • Construct a new TimeTickStrategy object based on this one, but with modified minor tick style.

    Example usage:

    Disable minor ticks:

    Axis.setTickStrategy(
        AxisTickStrategies.Time,
        ( tickStrategy: TimeTickStrategy ) => tickStrategy
            .setMinorTickStyle( emptyTick )
    )
    

    Set font of minor ticks:

    Axis.setTickStrategy(
        AxisTickStrategies.Time,
        ( tickStrategy: TimeTickStrategy ) => tickStrategy
            .setMinorTickStyle(( tickStyle: VisibleTicks ) => tickStyle
                .setLabelFont(( font ) => font
                    .setWeight( 'bold' )
                )
            )
    )
    

    Parameters

    • value: TickStyle | ImmutableMutator<TickStyle>

      Either a TickStyle object or a function, which creates a new one based on the existing style. Passing a function only works if the existing style is not emptyTick.

    Returns this

    New TimeTickStrategy object.

setTimeOrigin

  • setTimeOrigin(timeOrigin: number | undefined): this
  • Construct a new TimeTickStrategy object based on this one, but with modified timeOrigin.

    If a timeOrigin is defined, data-points will instead be interpreted as milliseconds since timeOrigin.

    Example usage:

    Application with 24 hour time origin offset:

    Axis.setTickStrategy(AxisTickStrategies.Time,
        (tickStrategy) => tickStrategy.setTimeOrigin(24 * 60 * 60 * 1000)
    )
    

    Parameters

    • timeOrigin: number | undefined

      Millisecond offset or undefined to disable time origin offsetting.

    Returns this

    New TimeTickStrategy object.

toJS

  • toJS(): object
  • Deeply converts this Record to equivalent native JavaScript Object.

    Note: This method may not be overridden. Objects with custom serialization to plain JS may override toJSON() instead.

    Returns object

toJSON

  • toJSON(): TProps
  • Shallowly converts this Record to equivalent native JavaScript Object.

    Returns TProps

toObject

  • toObject(): TProps
  • Shallowly converts this Record to equivalent JavaScript Object.

    Returns TProps

toSeq

  • toSeq(): Keyed<keyof TProps, TProps[keyof TProps]>
  • Returns Keyed<keyof TProps, TProps[keyof TProps]>

update

  • update(key: K, updater: function): this
  • Type parameters

    • K: keyof TProps

    Parameters

    • key: K
    • updater: function
        • Parameters

          • value: TProps[K]

          Returns TProps[K]

    Returns this

updateIn

  • updateIn(keyPath: Iterable<any>, updater: function): this
  • Parameters

    • keyPath: Iterable<any>
    • updater: function
        • Parameters

          • value: any

          Returns any

    Returns this

wasAltered

  • wasAltered(): boolean
  • see

    Map#wasAltered

    Returns boolean

withMutations

  • withMutations(mutator: function): this
  • Note: Not all methods can be used on a mutable collection or within withMutations! Only set may be used mutatively.

    see

    Map#withMutations

    Parameters

    • mutator: function
        • Parameters

          • mutable: this

          Returns any

    Returns this

Static Factory

  • Factory(values?: Partial<TProps> | Iterable<[string, any]>): Record<TProps> & Readonly<TProps>
  • Type parameters

    • TProps: Object

    Parameters

    • values: Partial<TProps> | Iterable<[string, any]>

    Returns Record<TProps> & Readonly<TProps>

Static Record

  • Record(defaultValues: TProps, name?: undefined | string): Factory<TProps>
  • Unlike other types in Immutable.js, the Record() function creates a new Record Factory, which is a function that creates Record instances.

    See above for examples of using Record().

    Note: Record is a factory function and not a class, and does not use the new keyword during construction.

    Type parameters

    • TProps

    Parameters

    • defaultValues: TProps
    • name: undefined | string

    Returns Factory<TProps>

Static getDescriptiveName

  • getDescriptiveName(record: Record<any>): string
  • Records allow passing a second parameter to supply a descriptive name that appears when converting a Record to a string or in any error messages. A descriptive name for any record can be accessed by using this method. If one was not provided, the string "Record" is returned.

    const { Record } = require('immutable')
    const Person = Record({
      name: null
    }, 'Person')
    
    var me = Person({ name: 'My Name' })
    me.toString() // "Person { "name": "My Name" }"
    Record.getDescriptiveName(me) // "Person"
    

    Parameters

    Returns string

Static isRecord

  • isRecord(maybeRecord: any): maybeRecord
  • True if maybeRecord is an instance of a Record.

    Parameters

    • maybeRecord: any

    Returns maybeRecord