cpd

chartjs-plugin-doughnutlabel

Chart.js plugin for doughnut chart to display text in the center

Showing:

Popularity

Downloads/wk

5.7K

GitHub Stars

45

Maintenance

Last Commit

2yrs ago

Contributors

2

Package

Dependencies

0

Size (min+gzip)

1.0KB

License

ISC

Type Definitions

Tree-Shakeable

No?

Categories

Readme

Chart.js Doughnut plugin to allow for lines of text in the middle

Chart.js plugin module that allows to display multiple lines of text centered in the middle area of the doughnut charts

Demo

Have a look at the Demo page.

Table of contents

Installation

Install through npm:

npm install --save chartjs-plugin-doughnutlabel

Usage

var myDoughnutChart = new Chart(ctx, {
  type: 'doughnut',
  data: data,
  options: {
    plugins: {
      doughnutlabel: {
        labels: [
          {
            text: 'The title',
            font: {
              size: '60'
            }
          },
          {
            text: getTotal,
            font: {
              size: '50'
            },
            color: 'grey'
          },
          {
            text: '$100.000',
            font: {
              size: '30'
            },
            color: 'red'
          },
          {
            text: '95%',
            font: {
              size: '45'
            },
          color: 'green'
          }
        ]
      }
    }       
  }
});

var getTotal = function(myDoughnutChart) {
    var sum = myDoughnutChart.config.data.datasets[0].data.reduce((a, b) => a + b, 0);
    return `Total: ${sum}`;
}

Usage without a module bundler

The plugin can be manually downloaded from the Releases page on GitHub!

<script src="chartjs-plugin-doughnutlabel.js"></script>

or use the minified version

<script src="chartjs-plugin-doughnutlabel.min.js"></script>

Development

You first need to install node dependencies (requires Node.js):

> npm install

The following commands will then be available from the repository root:

> gulp lint             // perform code linting
> gulp build            // build dist files
> gulp build --watch    // build and watch for changes
> gulp package          // create an archive with dist files and samples

In Angular

For an example on how to use this plugin with angular, please check this stackblitz prototype: doughnutlabel plugin in angular

License

chartjs-plugin-doughnutlabel is available under the MIT license.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100