2016-11-18 96 views
0

大家好!我想創建一個特定的HighChart,但我不知道我應該如何格式化我的drilldown數據,我在互聯網上找不到任何示例!HighCharts:深入堆積列

這JSfiddle顯示我得到多遠:http://jsfiddle.net/ma50685a/37/

HighChart假設可視化已刪除的註釋。前兩個欄是平均數量的過濾評論。當深入挖掘被激活時,我會堆積一堆網站和四類爲什麼評論被過濾(討厭的評論,垃圾郵件等)。

有人可以幫我解決這個問題,或者有一個如何格式化鑽取數據的例子嗎?

回答

1

有你需要多個系列堆疊柱,有DRIL後多個系列你必須動態地添加系列,例如在鑽取事件。

下面的對象的每個屬性代表一個系列,它與頂級系列名稱相關聯。 點擊第一列後會出現對象'1',並且會跨越4個類別。

var drilldowns = { 
      1: { 
      stacking: 'normal', 
      name: 'facebook', 
      color: Highcharts.getOptions().colors[0], 
      data: [ 
       ['nasty comments', 2], 
       ['spam', 3], 
       ['category-3', 10], 
       ['category-4', 15] 
      ] 
      }, 

      66: { 
      name: 'second-column-drilldown', 
      data: [ 
       ['second-column-drilldown-point', 10] 
      ] 
      } 
     }; 

下一個對象「1」將與從drilldowns.1對象中的數據被堆疊:

var drilldowns2 = { 
      1: { 
      color: Highcharts.getOptions().colors[1], 
      colorIndex: 1, 
      stacking: 'normal', 
      name: 'youtube', 
      data: [ 
       ['nasty comments', 5], 
       ['spam', 10], 
       ['category-3', 10], 
       ['category-4', 15] 
      ] 
      } 
     }; 

最後必須加上系列和下鑽進行燒成。

var series = drilldowns[e.point.name], 
      series2 = drilldowns2[e.point.name], 
      series3 = drilldowns3[e.point.name]; 

     this.addSingleSeriesAsDrilldown(e.point, series); 
     this.addSingleSeriesAsDrilldown(e.point, series2); 
     this.addSingleSeriesAsDrilldown(e.point, series3); 
     this.applyDrilldown(); 

例如:https://jsfiddle.net/ahjkouuh/

+0

謝謝!我會測試它! –

+0

太棒了!我編輯了一下代碼,所以它會接受來自文件的JSON數據,它效果很好!只用顏色掙扎一下,但是可以修復!非常感謝 –