我如何只重绘饼图一次,而不是为它具有的每个数据标签重绘一次?

How do i redraw a pie Chart only once, instead of once for every datalabel it has?

我正在处理来自 HighChart 的图表并实现了一个按钮,当按下该按钮时,它会从屏幕上删除图例并呈现图表以使用清空 space。但是在使用饼图时,它似乎为图表具有的每个数据标签重新绘制图表,从而将创建图表需要 2 秒的加载时间增加到半分钟。

 (function(b,a)
 {
 if(!b){
     return
 }
 var c = b.Chart.prototype,d=b.Legend.prototype;b.extend(c,
 {
     legendSetVisibility:function(h)
     {
         var i=this,k=i.legend,e,g,j,m=i.options.legend,f,l;

         if(m.enabled==h)
         {
             return
         }
         m.enabled=h;
         if(!h)
         {
             d.destroy.call(k);
             e=k.allItems;
             if(e)
             {
                 for(g=0,j=e.length;g<j;++g)
                 {
                     e[g].legendItem=a
                 }
             }
             k.group={}
         }
         i.animation= false;
         c.render.call(i);
     },
     legendToggle:function()
     {
         this.legendSetVisibility(this.options.legend.enabled^true)
     }
 })
}(Highcharts));

此代码是 http://jsfiddle.net/P2g6H/

的轻微改编

显然我还在使用旧版本的 highcharts,更新到最新版本解决了问题。