3D 列与堆叠(3D Column with stacking)

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

以下是具有null和0值的3D柱形图的示例。

我们已经在Highcharts Configuration Syntax一章中看到了用于绘制图表的配置

下面给出了具有null和0值的3D柱形图的示例。

配置 (Configurations)

现在让我们看一下所采取的其他配置/步骤。

chart.options3d

将图表类型配置为基于3D。 将类型设置为“列”。 这里,图表可以三维呈现。

var chart = {
   type: 'column',
   options3d: {
      enabled: true,
      alpha: 15,
      beta: 15,
      depth: 50,
      viewDistance: 25
   }
};

例子 (Example)

highcharts_3d_stacking.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>  
      <script src = "https://code.highcharts.com/highcharts-3d.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',
               marginTop: 80,
               marginRight: 40,
               options3d: {
                  enabled: true,
                  alpha: 15,
                  beta: 15,
                  viewDistance: 25,
                  depth: 40
               }
            };
            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 tooltip = {
               headerFormat: '<b>{point.key}</b><br>',
               pointFormat: '<span style = "color:{series.color}">\u25CF</span> {series.name}:{point.y}/{point.stackTotal}'
            };
            var plotOptions = {
               column: {
                  stacking: 'normal',
                  depth: 40
               }
            };   
            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.tooltip = tooltip; 
            json.plotOptions = plotOptions; 
            json.series = series;   
            $('#container').highcharts(json);
         });
      </script>
   </body>
</html>