如何只重新绘制一次饼图,而不是为它的每个数据标签绘制一次
How do i redraw a pie Chart only once, instead of once for every datalabel it has?
我正在HighChart中处理图表,并实现了一个按钮,当按下该按钮时,将图例从屏幕上删除,并渲染图表以使用清空的空间。但是,当使用饼图时,它似乎会为图表中的每个数据标签重新绘制图表,从而将加载时间增加到半分钟,创建一个需要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,更新到最新版本解决了问题。
相关文章:
- Javascript返回值只在循环中返回一次
- Jquery FadeIn FadeOut 只工作一次
- Javascript html每点击一次就会更改url
- 如何在chrome扩展中存储数据/结果,以及如何使用setTimeout使其只被调用一次
- Rails操作只调用一次,但我在ajax中每秒钟都调用一次
- jQuery滚动功能只工作一次
- 刷新导致我的帖子“;张贴“;再一次
- 引导程序崩溃一次只能看到一个
- 有没有一个抽象层,这样我就可以集成一次,然后使用pusher、pubnub或faye
- 加载器组件仅加载一次
- 根据Angular.JS上一次的内容禁用选择
- 一次又一次地在新的和相同的选项卡中打开一个url
- 只在宽度以下和宽度以上各准备一次
- 如果30秒未单击,请应用CSS一次,将其删除,然后重新迭代
- Angularjs:空对象,当只有一次点击时
- 单击时将功能限制为仅绘制一次
- 如何只重新绘制一次饼图,而不是为它的每个数据标签绘制一次
- 如何一次一个滚动绘制每个SVG路径(按时间顺序)
- 我如何一次在画布上绘制多个矩形
- D3.js一次绘制每个点