Chapter 5: Configuring Pie Chart with Sliced Off Sections (1)

Same series data with a section sliced off and data lables are changed to show the values as well

HTML

<script type="text/javascript" src="http://code.highcharts.com/highcharts.js"></script>
<body>
<div style="margin: 5px 60px 5px 5px; " id='container'></div>
</body>

JavaScript

$(document).ready(function() {

        function formatWithLineBreaks(str) {
            var words = str.split(' ');
            var lines = [];
            var line = ''; 
            $.each(words, function(idx, word) {
                if (line.length + word.length > 25) {
                    lines.push(line);
                    line = ''; 
                } 
                line += word + ' ';
            });
            lines.push(line);
            return lines.join('<br/>');
        }

        var chart = new Highcharts.Chart({
            chart: {
                renderTo: 'container',
                defaultSeriesType: 'pie',
                borderWidth: 1
            },
            title: {
                text: 'Number of Software Games Sold in 2011 Grouped by Publishers',
            },
            credits: { 
               position: {
                  align: 'left',
                  x: 20
               },
               text: 'Source: vgchartz'
            },
            plotOptions: {
               pie: {
                   slicedOffset: 30,
                   allowPointSelect: true,
                   dataLabels: {
                       formatter: function() {
                            var str = this.point.name + ': ' + Highcharts.numberFormat(this.point.y, 0);
                            return formatWithLineBreaks(str);
                       }
                   }
               }
            },
            series: [{
                data: [ { name: 'Nintendo', y: 54030288, sliced: true, dataLabels: { style: { fontWeight: 'bold' } } }, [ 'Electronic Arts', 31367739 ],
                        [ 'Activision', 30230170 ], [ 'Ubisoft', 25318980 ],
                        [ 'Microsoft', 24372261 ], [ 'Sony Computer Entertainment', 13805937 ],
                        [ 'Bethesda Softworks', 10813372 ], [ 'Take-Two Interactive', 10012212 ],
                        [ 'Others', 33910911 ] ]
            }]
        });
    });