2013-02-20 69 views
1

基於這個例子http://jsfiddle.net/EgzfS/2/我建有穿透堆積條形圖:如何讓某些類別具有明細而其他類別不是?

http://jsfiddle.net/uemit/9CJHq/

但是,在我被困了這樣一個問題:我怎樣才能讓某些類別下鑽和其他人沒有?

在該示例中,每個類別都可以被點擊,它將顯示由員工分隔的單獨一天的目標和銷售量。但是,讓我們說週五我有目標和銷售的一天,但沒有目標,沒有銷售員工的基礎上。我該如何將這一天納入圖表,但禁用當天酒吧的點擊?

events: { 
    click: function() { 
     var drilldown = this.drilldown; 
     if (drilldown) { // drill down 
      setChart([drilldown.name1, drilldown.name2], drilldown.categories, [drilldown.data1, drilldown.data2]); 
     } else { // restore 
      setChart([name1, name2], categories1, [data1, data2]); 
     } 
    } 
} 

非常感謝你的幫助,

UEM

[更新]

THX到帕維爾,我知道了現在的工作,這裏是更新的例子:

http://jsfiddle.net/uemit/9CJHq/3/

回答

1

首先,您必須從沒有數據的數據(明顯是什麼)中刪除向下鑽取。然後,你可以添加有一些屬性,像空:

{ 
    y: 1355, 
    empty: true 
} 

然後在點擊事件中,你可以添加檢查,如果你想深入分析:

     click: function() { 
          var drilldown = this.drilldown, 
           empty = this.empty; 
          if (drilldown) { // drill down 
           setChart([drilldown.name1, drilldown.name2], drilldown.categories, [drilldown.data1, drilldown.data2]); 
          } else if(empty) { 
           //do nothing 
           return ; 
          } else { // restore 
           setChart([name1, name2], categories1, [data1, data2]); 
          } 
         } 

和工作例如:http://jsfiddle.net/9CJHq/2/

+0

好極了,謝謝。我在工具提示中添加了「else if(point.empty)」,並更新了我的問題。 – uem 2013-02-20 14:43:02

相關問題