Getting Started
#Installation
#npm
npm install chartjs-plugin-datalabels --save
This plugin can also be installed using Bower.
#CDN
By default, https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels
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:
https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@1.1.2 // exact version
https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@1 // latest 1.x.x
Read more about jsDeliver versioning on their website.
#Download
You can download the latest version of chartjs-plugin-datalabels
from the GitHub releases:
chartjs-plugin-datalabels.js
(recommended for development)chartjs-plugin-datalabels.min.js
(recommended for production)chartjs-plugin-datalabels.zip
(contains.js
and.min.js
versions + samples)
#Integration
#HTML
<script src="https://cdn.jsdelivr.net/npm/chart.js@2.7.3/dist/Chart.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@0.7.0"></script>
IMPORTANT
chartjs-plugin-datalabel
must be loaded after the Chart.js library!
Once imported, the plugin is available under the global property ChartDataLabels
. This is useful to register/unregister the plugin afterward.
#Module
import Chart from 'chart.js'; import ChartDataLabels from 'chartjs-plugin-datalabels';
#Registration
This plugin registers itself globally, meaning that once imported, all charts will display labels. In case you want it enabled only for a few charts, you first need to unregister it globally:
// NOTE: when imported as a <script> tag, use the global property 'ChartDataLabels' Chart.plugins.unregister(ChartDataLabels);
Then, you can enabled the plugin only for specific charts:
var chart = new Chart(ctx, { plugins: [ChartDataLabels], options: { // ... } })
See also Chart.js › Using plugins.
DEPRECATION
From version 1.x, this plugin will no longer be registered automatically (see #42 for details).
#Configuration
The plugin options can be changed at 3 different levels and are evaluated with the following priority:
- per dataset:
dataset.datalabels.*
- per chart:
options.plugins.datalabels.*
- or globally:
Chart.defaults.global.plugins.datalabels.*
For example:
// Change default options for ALL charts Chart.helpers.merge(Chart.defaults.global.plugins.datalabels, { color: '#FE777B' }); var chart = new Chart(ctx, { options: { plugins: { // Change options for ALL labels of THIS CHART datalabels: { color: '#36A2EB' } } }, data: { datasets: [{ // Change options only for labels of THIS DATASET datalabels: { color: '#FFCE56' } }] } });