带百分比的堆叠柱形图



以下是带百分比的堆叠柱形图示例。

我们已经看到在 Highcharts 配置语法 一章中用于绘制图表的配置。现在让我们了解附加配置以及如何在 plotOptions 中添加堆叠属性。

下面给出了一个带有百分比的堆叠柱形图示例。

plotOptions

PlotOptions 是每个序列类型配置对象的包装对象。每个序列的配置对象也可以针对系列数组中给出的每个系列项进行覆盖。这是为了互相叠加每个序列的值。

使用 plotOptions.column.stacking 作为“percent”来配置图表的叠加。可能值是 null,禁用叠加,“normal”按值叠加,“percent”按百分比叠加图表。

var plotOptions = {
   column: {
      stacking: 'percent'      
   }
};

示例

highcharts_column_percentage.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 = {
               type: 'column'
            };
            var title = {
               text: 'Stacked column chart'   
            };    
            var xAxis = {
               categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
            };
            var yAxis = {
               min: 0,
               title: {
                  text: 'Total fruit consumption'
               }
            };  
            var tooltip = {
               pointFormat: '<span style = "color:{series.color}">{series.name}</span> : <b>{point.y}</b> ({point.percentage:.0f}%)<br/>',
               shared: true
            };
            var plotOptions = {
               column: {
                  stacking: 'percent'        
               }
            };
            var credits = {
               enabled: false
            };
            var series = [
               {
                  name: 'John',
                  data: [5, 3, 4, 7, 2]
               }, 
               {
                  name: 'Jane',
                  data: [2, 2, 3, 2, 1]
               }, 
               {
                  name: 'Joe',
                  data: [3, 4, 4, 2, 5]      
               }
            ];     
      
            var json = {};   
            json.chart = chart; 
            json.title = title;   
            json.xAxis = xAxis;
            json.yAxis = yAxis;   
            json.tooltip = tooltip;
            json.plotOptions = plotOptions;
            json.credits = credits;
            json.series = series;
            $('#container').highcharts(json);
         });
      </script>
   </body>
   
</html>

结果

验证结果。

highcharts_column_charts.htm
广告