2013-12-23 82 views
0

我創建了一個甜甜圈圖表,但是由於一些奇怪的原因,我無法讓聽衆處理它。我嘗試在系列和外部添加監聽器,但無法使其工作。拉力餅圖聽衆不工作

任何人都可以請讓我知道可能我在這裏失去了 下面是一小段代碼片段

VAR圖表= Ext.create( 'Rally.ui.chart.Chart',{

    chartConfig: { 
         chart: { 
          type: 'pie', 
          /*events: { 
      click: function(event) { 
      console.dir("Clicked"); 
      } 
      }*/ /*THis works but it generates events only on click of the text on the pie charts*/ 
         }, 
         title: { 
          text: 'Defects per Release Status ' 
         }, 
         yAxis: { 
          title: { 
           text: 'Total Defects per project' 
          } 
         }, 
         plotOptions: { 
          pie: { 
           shadow: false, 
           center: ['50%', '50%'] 
          } 
         }, 
         tooltip: { 
          valueSuffix: '%' 
         }, 
         series: [{ 
          name: 'Teams', 
          data: teamData, 
          size: '60%', 
          dataLabels: { 
           formatter: function() { 
            return this.y > 5 ? this.point.name : null; 
           }, 
           color: 'white', 
           distance: -40 
          } 
         }, { 
          name: 'Defects', 
          data: defectData, 
          size: '80%', 
          innerSize: '60%', 
          dataLabels: { 
           formatter: function() { 
            // display only if larger than 1 
            return this.y > 1 ? '<b>' + this.point.name + ':</b> ' + this.y + '%' : null; 
           } 
          } 
         }] 
        }, 

         listeners: { 
    click: {   
     element: 'el', //bind to the underlying el property on the panel 
     fn: function(){ console.log('click el'); } 
    }, 
    dblclick: { 
     element: 'body', //bind to the underlying body property on the panel 
     fn: function(){ console.log('dblclick body'); } 
    } 
} 

       }); 
+1

你可以嘗試在jsfiddle中重現相同的內容,這實際上可以幫助我們理解出了什麼問題 – Strikers

+0

我絕對可以嘗試,但我總覺得這可能與拉力賽的解釋方式有關,而不是highCharts,因爲這是拉力賽自定義應用 – user3129202

+0

謝謝我通過http://jsfiddle.net/xXwax/取得了一些進展。我會繼續進一步發展 – user3129202

回答

0

添加一個click事件chartConfig.plotOptions如下圖所示應該工作。您可以在this repo看到拉力賽TestCaseResults的完整例如通過判決餅圖。

plotOptions : { 
    pie: { 
     allowPointSelect: true, 
     cursor: 'pointer', 
     point: { 
     events: { 
      click: function(event) { 
      var options = this.options; 
      alert(options.name + ' clicked'); 
     } 
     } 
},