2017-12-15 20 views
1

複数のシリーズダウンの例をいくつか見ていますが、2番目のドリルダウンシリーズの2番目のアイテムを3番目のレベルにドリルダウンする方法の例はありません。HighCharts複数のシリーズをドリルダウンし、ドリルダウン時に2番目のアイテムをドリルダウンする方法は?

example。 MSIE後

 drilldown: { 
      name: 'MSIE versions', 
      categories: ['MSIE 8.0', 'MSIE 6.0', 'MSIE 7.0', 'MSIE 9.0'], 
      level: 1, 
      data: [{ 
       y: 33.06, 
       drilldown: { 
        level: 2, 
        name: 'drilldown next level', 
        categories: ['a', 'b', 'c'], 
        data: [23,54,47], 
        color: colors[0] 
       } 
      }, 10.85, 7.35, 2.41], 
      color: 

、Iシリーズ(MSIE 6.0)の2番目の項目は3レベルに移動するために設定した例を見ていません。私は最初の項目(MSIE 8.0)がどこにあるのか分かりませんでした。 2番目または3番目のアイテムを3番目のレベルに設定する方法はありますか?

+0

あなたは(MSIE 8.0)用と同様にそれを行うことができます。それは助けてください! [例](https://jsfiddle.net/pandeyvishal1986/edmkfcht/#&togetherjs=mLx7DDJaFH) – RonyLoud

+1

[複数レベルのドリルダウンハイチャート]の複製が可能です(https://stackoverflow.com/questions/23153403/drilldown-multiple-levels-ハイチャート) – Patata

答えて

1

var chart; 
 
     $(document).ready(function() { 
 

 
      var colors = Highcharts.getOptions().colors, 
 
       categories = ['MSIE', 'Firefox', 'Chrome', 'Safari', 'Opera'], 
 
       name = 'Browser brands', 
 
       level = 0, 
 
       data = [{ 
 
        y: 55.11, 
 
        color: colors[0], 
 
        drilldown: { 
 
         name: 'MSIE versions', 
 
         categories: ['MSIE 8.0', 'MSIE 6.0', 'MSIE 7.0', 'MSIE 9.0'], 
 
         level: 1, 
 
         data: [{ 
 
          y: 33.06, 
 
          drilldown: { 
 
           level: 2, 
 
           name: 'drilldown next level2', 
 
           categories: ['a', 'b', 'c'], 
 
           data: [23, 54, 47], 
 
           color: colors[0] 
 
          } 
 
         }, { 
 
          y: 10.85, 
 
          drilldown: { 
 
           level: 2, 
 
           name: 'drilldown next level2', 
 
           categories: ['e', 'f', 'g'], 
 
           data: [23, 54, 47], 
 
           color: colors[0] 
 
          } 
 
          }, { 
 
           y: 7.35, 
 
           drilldown: { 
 
            level: 2, 
 
            name: 'drilldown next level2', 
 
            categories: ['h', 'i', 'j'], 
 
            data: [78, 11, 90], 
 
            color: colors[0] 
 
           } 
 
         }, { 
 
          y: 2.41, 
 
          drilldown: { 
 
           level: 2, 
 
           name: 'drilldown next level2', 
 
           categories: ['k', 'l', 'm'], 
 
           data: [45, 12, 67], 
 
           color: colors[0] 
 
          } 
 
         }], 
 
         color: colors[0] 
 
        } 
 
       }, { 
 
        y: 21.63, 
 
        color: colors[1], 
 
        drilldown: { 
 
         name: 'Firefox versions', 
 
         categories: ['Firefox 3.6', 'Firefox 4.0', 'Firefox 3.5', 'Firefox 3.0', 'Firefox 2.0'], 
 
         data: [13.52, 5.43, 1.58, 0.83, 0.20], 
 
         color: colors[1] 
 
        } 
 
       }, { 
 
        y: 11.94, 
 
        color: colors[2], 
 
        drilldown: { 
 
         name: 'Chrome versions', 
 
         categories: ['Chrome 10.0', 'Chrome 11.0', 'Chrome 8.0', 'Chrome 9.0', 'Chrome 12.0', 
 
          'Chrome 6.0', 'Chrome 5.0', 'Chrome 7.0'], 
 
         data: [9.91, 0.50, 0.36, 0.32, 0.22, 0.19, 0.12, 0.12], 
 
         color: colors[2] 
 
        } 
 
       }, { 
 
        y: 7.15, 
 
        color: colors[3], 
 
        drilldown: { 
 
         name: 'Safari versions', 
 
         categories: ['Safari 5.0', 'Safari 4.0', 'Safari Win 5.0', 'Safari 4.1', 'Safari/Maxthon', 
 
          'Safari 3.1', 'Safari 41'], 
 
         data: [4.55, 1.42, 0.23, 0.21, 0.20, 0.19, 0.14], 
 
         color: colors[3] 
 
        } 
 
       }, { 
 
        y: 2.14, 
 
        color: colors[4], 
 
        drilldown: { 
 
         name: 'Opera versions', 
 
         categories: ['Opera 11.x', 'Opera 10.x', 'Opera 9.x'], 
 
         data: [1.65, 0.37, 0.12], 
 
         color: colors[4] 
 
        } 
 
       }]; 
 

 
      function setChart(name, categories, data, color, level) { 
 
       chart.xAxis[0].setCategories(categories); 
 
       chart.series[0].remove(); 
 

 

 
       chart.addSeries({ 
 
        name: name, 
 
        data: data, 
 
        level: level, 
 
        color: color || 'white' 
 
       }); 
 
      } 
 

 
      chart = new Highcharts.Chart({ 
 
       chart: { 
 
        renderTo: 'container', 
 
        type: 'column' 
 
       }, 
 
       title: { 
 
        text: 'Browser market share, April, 2011' 
 
       }, 
 
       subtitle: { 
 
        text: 'Click the columns to view versions. Click again to view brands.' 
 
       }, 
 
       xAxis: { 
 
        categories: categories 
 
       }, 
 
       yAxis: { 
 
        title: { 
 
         text: 'Total percent market share' 
 
        } 
 
       }, 
 
       plotOptions: { 
 
        column: { 
 
         cursor: 'pointer', 
 
         point: { 
 
          events: { 
 
           click: function() { 
 

 
            var drilldown = this.drilldown; 
 
            if (drilldown) { // drill down 
 

 
             this.series.chart.setTitle({ 
 
              text: drilldown.name 
 
             }); 
 

 
             setChart(drilldown.name, drilldown.categories, drilldown.data, drilldown.color, drilldown.level); 
 
            } else { // restore 
 
             setChart(name, categories, data, null, level); 
 
            } 
 
           } 
 
          } 
 
         }, 
 
         dataLabels: { 
 
          enabled: true, 
 
          color: colors[0], 
 
          style: { 
 
           fontWeight: 'bold' 
 
          }, 
 
          formatter: function() { 
 
           return this.y + '%'; 
 
          } 
 
         } 
 
        } 
 
       }, 
 
       tooltip: { 
 
        formatter: function() { 
 
         var point = this.point, s = ''; 
 

 
         switch (this.series.options.level) { 
 
          case 0: 
 
           s = 'LEVEL ONE<br/>'; 
 
           s += ' INSTRUCTIONS HERE 111'; 
 
           break; 
 

 
          case 1: 
 
           s = 'LEVEL TWO INSTRUCTIONS HERE <br/>'; 
 
           s += ' INSTRUCTIONS HERE 222'; 
 
           break; 
 

 
          case 2: 
 
           s = 'LEVEL THREE INSTRUCTIONS HERE<br/>'; 
 
           s += 'INSTRUCTIONS HERE 333'; 
 
           break; 
 
         } 
 
         return s; 
 
        } 
 
       }, 
 
       series: [{ 
 
        name: name, 
 
        level: level, 
 
        data: data, 
 
        color: 'white' 
 
       }], 
 
       exporting: { 
 
        enabled: false 
 
       } 
 
      }); 
 

 

 
     });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://code.highcharts.com/highcharts.js"></script> 
 
<script src="https://code.highcharts.com/modules/data.js"></script> 
 
<script src="https://code.highcharts.com/modules/drilldown.js"></script> 
 
<div id="container" style="height: 400px; width: 500px"></div>

+0

Ronyさん、ありがとう、私はもっと複雑になりました。 – Becker218

関連する問題