10

Highcharts Pie チャートを取得するにはどうすれば選択した円 ID を取得できますか?

私はデータ配列を持っています

var data= { name: series[i], y: Data[i],id:categorydata[i] };

グラフをレンダリングする

new Highcharts.Chart({ ....

  ....  
series: [{
                type: 'pie',
                name: 'Category',
                data: data
            }]
  });

選択したパイの ID を取得するにはどうすればよいですか。

私はこれをやっています

plotOptions: {
                series: {
                    animation: false,
                    events:{
                        click: function (event) {
                            var point = this;
                            //How do I Access the id??????? 
                            alert('value: ' + this.series);


                        }
                    }
                },
4

1 に答える 1

29

シリーズではなく、ポイント構成でイベント処理が必要です。各ウェッジは、単一のシリーズのポイントです。

   var data = [{ name: 'One', y: 10, id: 0 },{ name: 'Two', y: 10, id: 1 }];

   // some other code here...

   series:[
      {
         "data": data,
          type: 'pie',
          animation: false,
          point:{
              events:{
                  click: function (event) {
                      alert(this.x + " " + this.y);
                  }
              }
          }          
      }
   ],

ここでフィドル。

完全に実行されているコード:

var chart;
point = null;
$(document).ready(function () {

    var data = [{ name: 'One', y: 10, id: 0 },{ name: 'Two', y: 10, id: 1 }];
    
    chart = new Highcharts.Chart(
    {
       series:[
          {
             "data": data,
              type: 'pie',
              animation: false,
              point:{
                  events:{
                      click: function (event) {
                          alert(this.id);
                      }
                  }
              }          
          }
       ],
       "chart":{
          "renderTo":"container"
       },
    });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
<div id="container" style="width: 320px; height: 200px"></div>

于 2013-03-20T21:09:12.283 に答える