2015-10-29 82 views
0

我想改變一個窗口大小事件的Highchart派的中心,但我不能做到這一點。動態更改Highchart派的中心?

這裏有一個jsfiddle

在那裏我試圖移動沒有成功餡餅...

$(function() { 
 
    var chart = new Highcharts.Chart({ 
 
     chart: { 
 
     \t renderTo: 'container', 
 
      plotBackgroundColor: null, 
 
      plotBorderWidth: null, 
 
      plotShadow: false, 
 
      type: 'pie' 
 
     }, 
 
     plotOptions: { 
 
      pie: { 
 
       center: ["50%","50%"] 
 
      } 
 
     }, 
 
     series: [{ 
 
      name: 'Brands', 
 
      colorByPoint: true, 
 
      data: [{ 
 
       name: 'Microsoft Internet Explorer', 
 
       y: 56.33 
 
      }, { 
 
       name: 'Chrome', 
 
       y: 24.03, 
 
      }, { 
 
       name: 'Firefox', 
 
       y: 10.38 
 
      }, { 
 
       name: 'Safari', 
 
       y: 4.77 
 
      }, { 
 
       name: 'Opera', 
 
       y: 0.91 
 
      }, { 
 
       name: 'Proprietary or Undetectable', 
 
       y: 0.2 
 
      }] 
 
     }] 
 
    }); 
 
    $('#changeposition').click(function() { 
 
     \t chart.options.plotOptions.pie.center = ["0","50%"]; 
 
     console.log(chart); 
 
    }); 
 
});
<script src="https://code.highcharts.com/highcharts.js"></script> 
 
<script src="https://code.highcharts.com/modules/exporting.js"></script> 
 
<button id="changeposition" type="button">To the left</button> 
 
<div id="container" style="min-width: 310px; height: 400px; max-width: 600px; margin: 0 auto"></div>

回答

3

只需補充一點:

$('#changeposition').click(function() { 
     chart.options.plotOptions.pie.center = ["0%","50%"]; 
     console.log(chart); 
     chart = new Highcharts.Chart(chart.options); 
}); 

你需要重新繪製字符噸。

這裏是一個分叉的jsfiddle工作:https://jsfiddle.net/45j7bxnn/1/

+0

在這裏找到答案是有辦法的餡餅滑動,而不是重新創建它? – Frntz

+1

我會推薦移動容器div,在那裏你可以根據你的需要設置動畫效果,甚至可以使用某種類似綠色的庫。 –

+1

您不能動態修改圖表中心,您將不得不重新繪製它。 –