堆叠和分组列(Stacked and Grouped column)

优质
小牛编辑
126浏览
2023-12-01

以下是堆叠和分组柱形图的示例。

我们已经在Highcharts Configuration Syntax一章中看到了用于绘制图表的配置 。 现在让我们看一下其他配置,以及我们如何在plotoptions添加plotoptions属性。

下面给出了堆叠和分组柱形图的示例。

plotOptions

plotOptions是每个系列类型的配置对象的包装对象。 还可以为系列数组中给出的每个系列项覆盖每个系列的配置对象。 这是为了将每个系列的值叠加在一起。 这是为了将每个系列的值叠加在一起。

使用plotOptions.column.stacking配置图表的堆叠为“normal”。 可能的值为null,禁用堆叠,“正常”堆栈按值,“百分比”按百分比堆叠图表。

var plotOptions = {
   column: {
      stacking: 'normal',
      dataLabels: {
         enabled: true,
         color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white',
         style: {
            textShadow: '0 0 3px black'
         }
      }
   }
};

系列 (series)

配置每个系列的堆栈以标识系列组。

series: [{
   name: 'John',
   data: [5, 3, 4, 7, 2],
   stack: 'male'
}] 

例子 (Example)

highcharts_column_stacked_grouped.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: 'Total fruit consumption, grouped by gender'   
            };    
            var xAxis = {
               categories: ['Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas']
            };
            var yAxis = {
               allowDecimals: false,
               min: 0,
               title: {
                  text: 'Number of fruits'
               }     
            }; 
            var plotOptions = {
               column: {
                  stacking: 'normal'        
               }
            };
            var credits = {
               enabled: false
            };
            var series = [
               {
                  name: 'John',
                  data: [5, 3, 4, 7, 2],
                  stack: 'male'
               }, 
               {
                  name: 'Joe',
                  data: [3, 4, 4, 2, 5],
                  stack: 'male'
               }, 
               {
                  name: 'Jane',
                  data: [2, 5, 6, 2, 1],
                  stack: 'female'
               }, 
               {
                  name: 'Janet',
                  data: [3, 0, 4, 4, 3],
                  stack: 'female'
               }
            ];     
            var json = {};   
            json.chart = chart; 
            json.title = title;   
            json.xAxis = xAxis;
            json.yAxis = yAxis;  
            json.plotOptions = plotOptions;
            json.credits = credits;
            json.series = series;
            $('#container').highcharts(json);
         });
      </script>
   </body>
</html>