Time Cartesian Axis

    The x-axis data points may additionally be specified via the attribute when using the time scale.

    Date Formats

    When providing data for the time scale, Chart.js supports all of the formats that Moment.js accepts. See for details.

    Configuration Options

    The following options are provided by the time scale. You may also set options provided by the .

    • millisecond
    • second
    • minute
    • hour
    • day
    • week
    • month
    • year
      For example, to create a chart with a time scale that always displayed units per month, the following config could be used.

    Display Formats

    The following display formats are used to configure how different time units are formed into strings for the axis tick marks. See for the allowable format strings.

    NameDefaultExample
    millisecond'h:mm:ss.SSS a'11:20:01.123 AM
    second'h:mm:ss a'11:20:01 AM
    minute'h:mm a'11:20 AM
    hour'hA'11AM
    day'MMM D'Sep 4
    week'll'Sep 4 2015
    month'MMM YYYY'Sep 2015
    quarter'[Q]Q - YYYY'Q3 - 2015
    year'YYYY'2015

    For example, to set the display format for the 'quarter' unit to show the month and year, the following config would be passed to the chart constructor.

    The distribution property controls the data distribution along the scale:

    • 'linear': data are spread according to their time (distances can vary)
    • 'series': data are spread at the same distance from each other

    Scale Bounds

    • 'data': make sure data are fully visible, labels outside are removed
    • 'ticks': make sure ticks are fully visible, data outside are truncated

    The ticks.source property controls the ticks generation

    • 'auto': generates "optimal" ticks based on scale size and time options.
    • 'data': generates ticks from data (including labels from data {t|x|y} objects)
    • : generates ticks from user given data.labels values ONLY

    Parser

    If this property is defined as a string, it is interpreted as a custom format to be used by moment to parse the date.

    If this is a function, it must return a moment.js object given the appropriate data value.