We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback


JavaScript Donut Chart is like a pie chart, except for the space at the center. This chart is useful when you want to compare the contribution of each data with the total.

Custom inner radius

You can customize the inner radius of the chart to make it pleasing. Making inner radius to 0 will change the doughnut to pie chart. You can customize both the radius and inner radius of the doughnut.

Doughnut Legend

Legends are used to show the information about each point to know about its contribution towards the total sum. You can collapse the point using legend click.

Start and End Angle

Customize the start and end angle of the chart to achieve the semi-pie.

Data Label

Data labels in JavaScript Donut Graph displays information about data points. Add a template to display data labels with HTML elements such as images, DIV, and spans for more informative data labels. You can rotate a data label by its given angle.

Smart labels

Arranges data labels smartly to avoid overlapping when the data point values fall in close range.

Grouped points

Group the points in pie chart based on some condition. The grouped slices can be split into individual points by clicking the slice.

Drilldown Operation

Focus-in on the data within the data using drilldown operation.

Different radius

Customize the radius of individual slice using built-in APIs.

Donut Center

Move the center of the donut relative to the plot area.

Center label

Place a label at the center of the donut chart. Also, when the mouse pointer hovers over a donut slice, the relevant data is displayed at the center of the donut chart.


Customize the look and feel of the doughnut using built-in APIs.

JavaScript Doughnut Chart Code Example

Easily get started with JavaScript Doughnut Chart using a few simple lines of HTML and JS code example as demonstrated below. Also explore our JavaScript Doughnut Chart Example that shows you how to render and configure the chart.

<!DOCTYPE html>
    <div id="container">
     <div id="Chart"></div>
import { AccumulationChart, PieSeries} from '@syncfusion/ej2-charts';
Chart.Inject(AccumulationChart, PieSeries);

let chart: AccumulationChart = new AccumulationChart({
            dataSource: [
                { x: 'United States', y: 45, text: 'USA', fill: '#00226C' },
                { x: 'Australia', y: 53, text: 'AUS: 14%', fill: '#0450C2' },
                { x: 'China', y: 56, text: 'CHN', fill: '#0073DC' },
                { x: 'India', y: 61, text: 'IND', fill: '#0D98FF' },
                { x: 'Japan', y: 13, text: 'JPN', fill: '#9CD9FF' },
                { x: 'United Kingdom', y: 71, text: 'UK', fill: '#0450C2' }
            xName: 'x',
            yName: 'y',
            innerRadius: '40%'
}, '#Chart');

Learning Resources


Doughnut Chart User Guide

Learn the available options to customize the JavaScript doughnut chart.


Doughnut Chart API Reference

Explore the JavaScript doughnut chart APIs.


Scroll up icon

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

Live Chat Icon For mobile
Live Chat Icon