chartjs-adapter-luxon
v1.3.1
Published
Chart.js adapter to use Luxon for time functionalities
Downloads
288,515
Readme
chartjs-adapter-luxon
Overview
This adapter allows the use of Luxon with Chart.js. Luxon provides built-in support for time zones and internationalization.
Requires Chart.js 2.8.0 or later and Luxon 1.0.0 or later.
Note: once loaded, this adapter overrides the default date-adapter provided in Chart.js (as a side-effect).
Installation
npm
npm install luxon chartjs-adapter-luxon --save
import {Chart} from 'chart.js';
import 'chartjs-adapter-luxon';
CDN
By default, https://cdn.jsdelivr.net/npm/chartjs-adapter-luxon
returns the latest (minified) version, however it's highly recommended to always specify a version in order to avoid breaking changes. This can be achieved by appending @{version}
to the URL:
<script src="https://cdn.jsdelivr.net/npm/chart.js@^3"></script>
<script src="https://cdn.jsdelivr.net/npm/luxon@^2"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-adapter-luxon@^1"></script>
Read more about jsDelivr versioning on their website.
Configuration
Any date adapter options in the chart configuration will be passed through to Luxon's factory functions.
The following table describes the supported options that these functions accept.
Namespace: options.scales[scaleId].adapters.date
| Name | Type | Default | Description
| ---- | ---- | ------- | -----------
| locale
| string
| undefined
| Set a locale to use on the resulting DateTime
instance. If not set, the adapter will use the locale, defined at chart options level. By default, Luxon uses the system's locale. See Intl
locale.
| numberingSystem
| string
| undefined
| Set the numbering system to set on the resulting DateTime
instance. See Luxon and Intl
numberingSystem documentation.
| outputCalendar
| string
| undefined
| Set the output calendar to set on the resulting DateTime
instance. See Luxon and Intl
calendar documentation.
| setZone
| boolean
| undefined
| Override the zone with a zone specified in the string itself, if it specifies one. By default, Luxon uses options.setZone=false
.
| zone
| string
|Zone
| undefined
| Set the zone to place the DateTime
into. By default, Luxon uses options.zone='local'
. See Luxon and Intl
timeZone documentation.
Read the Chart.js documention for other possible date/time related options. For example, the time scale time.*
options can be overridden using the Luxon formats.
Development
You first need to install node dependencies (requires Node.js):
> npm install
The following commands will then be available from the repository root:
> npm run build // build dist files
> npm test // perfom code testing
> npm run lint // perform code linting
License
chartjs-adapter-luxon
is available under the MIT license.