Highcharts - Pie Chart with Monochrome


Advertisements

Following is an example of a Pie chart with monochrome.

We have already seen the configuration used to draw a chart in Highcharts Configuration Syntax chapter.

Configurations

Let us now see the additional configurations/steps taken.

colors

Configure the colors of each pie using the Highcharts.getOptions().plotOptions.pie.colors property.

// Make monochrome colors and set them as default for all pies
Highcharts.getOptions().plotOptions.pie.colors = (
   function () {
      var colors = [];
      var base = Highcharts.getOptions().colors[0];
      var i;

      for (i = 0; i < 10; i += 1) {
         // Start out with a darkened base color (negative brighten), and end
         // up with a much brighter color
         colors.push(Highcharts.Color(base).brighten((i - 3) / 7).get());
      }
      return colors;
   }()
);

Example

highcharts_pie_monochrome.htm

<html>
   <head>
      <title>Highcharts Tutorial</title>
      <script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
      </script>
      <script src = "https://code.highcharts.com/highcharts.js"></script>  
   </head>
   
   <body>
      <div id = "container" style = "width: 550px; height: 400px; margin: 0 auto"></div>
      <script language = "JavaScript">
         $(document).ready(function() {  
            var chart = {
               plotBackgroundColor: null,
               plotBorderWidth: null,
               plotShadow: false
            };
            var title = {
               text: 'Browser market shares at a specific website, 2014'   
            };      
            var tooltip = {
               pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
            };
            var plotOptions = {
               pie: {
                  allowPointSelect: true,
                  cursor: 'pointer',
                  
                  dataLabels: {
                     enabled: true,
                     format: '<b>{point.name}%</b>: {point.percentage:.1f} %',
                     style: {
                        color: (
                           Highcharts.theme && Highcharts.theme.contrastTextColor) ||
                           'black'
                     }
                  }
               }
            };
            var series = [{
               type: 'pie',
               name: 'Browser share',
               data: [
                  ['Firefox',   45.0],
                  ['IE',       26.8],
                  {
                     name: 'Chrome',
                     y: 12.8,
                     sliced: true,
                     selected: true
                  },
                  ['Safari',    8.5],
                  ['Opera',     6.2],
                  ['Others',   0.7]
               ]
            }];     
            
            // Make monochrome colors and set them as default for all pies
            Highcharts.getOptions().plotOptions.pie.colors = (function () {
               var colors = [];
               var base = Highcharts.getOptions().colors[0];
               var i;

               for (i = 0; i < 10; i += 1) {
                  // Start out with a darkened base color (negative brighten), and end
                  // up with a much brighter color
                  colors.push(Highcharts.Color(base).brighten((i - 3) / 7).get());
               }
               return colors;
            }());
	  
            var json = {};   
            json.chart = chart; 
            json.title = title;     
            json.tooltip = tooltip;  
            json.series = series;
            json.plotOptions = plotOptions;
            $('#container').highcharts(json);  
         });
      </script>
   </body>
   
</html>

Result

Verify the result.

highcharts_pie_charts.htm
Advertisements