Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取highcharts以重新设置线图的动画_Javascript_Jquery_Css_Html_Highcharts - Fatal编程技术网

Javascript 获取highcharts以重新设置线图的动画

Javascript 获取highcharts以重新设置线图的动画,javascript,jquery,css,html,highcharts,Javascript,Jquery,Css,Html,Highcharts,我想创建一个带有按钮的highCharts页面来“重新设置”图表 最初创建序列时,我将“重画”设置为FALSE: $("contain").highcharts().addSeries({ name: "filter", data: result }, false, {duration: 300000, easing: 'linear'}); 然后在整个图表上手动调用redraw()时: $("cont

我想创建一个带有按钮的highCharts页面来“重新设置”图表

最初创建序列时,我将“重画”设置为FALSE:

   $("contain").highcharts().addSeries({                        
        name: "filter",
        data: result
   }, false, {duration: 300000, easing: 'linear'});
然后在整个图表上手动调用redraw()时:

$("contain").highcharts().redraw()
…图表从一开始就设置动画,但仅设置一次。在图表“在屏幕上”动画化之后,我发现除了删除然后重新添加之外,没有办法让它们从一开始就重新动画化,这对我的案例来说不是一个理想的解决方案,因为会有很多系列(行)和大量数据,因此我希望有一个更简单的解决方案(我编辑问题时看到有人回答)...

有没有办法做到这一点,或者每次我想重新设置动画时,都必须删除然后重新添加该系列


这是我先前答应过的小提琴。它使用了我不喜欢的“删除/重新添加”概念:

如果你想重新激活同一个系列,你需要删除当前的一个,并将其重新绘制为一个新系列

 $('#button').click(function() {
    $("contain").highcharts().series[0].remove();
    $("contain").highcharts().addSeries({
       name:"filter",
       data: result} );

});

你能在你的代码中添加一个JSFIDLE吗?我将不得不从一个更大的系统中重构它以使其在线,这是我没有在前面安装JSFIDLE的唯一原因(很多依赖项/钩子)。。。我们将尽快这样做;只是没时间了。。。我不明白为什么这被否决了(第一次否决了?!)——这是一个针对特定问题的特定问题。@BenA.Hilleli,您使用的是$.getJSON(endpoint,params,function(){})吗?这就是我刷新图表的方法。不,但如果这有效,我可以很容易地适应使用它。问题:如果您.getJSON是一个系列(线图中有1个“线”);然后,getJSON非常相同的系列(相同的数据等),整个图形是否重新绘制并重新设置动画?如果有,你有什么例子吗?我添加了一个小提琴,通过删除/读取实现了这一目标-但我希望有一个更优雅的解决方案…'谢谢。当你回答的时候,我正在澄清这个问题。我希望这样做,而不必删除和重新添加该系列(见上面的编辑问题);我想知道这是否可能。@BenA.Hilleli,我相信另一种方法是使用
$(“contain”).highcharts().series[0].setData(data,true)
,这将调用
redraw()
方法。但它仍然包括读取该系列,而不是删除。如果调用时该行已经出现在屏幕上,则不会重新绘制,或者可能会重新绘制,但由于它没有首先“清除”,因此将在相同的蓝线上写入一条蓝线(实际上屏幕保持不变,没有重新激活)。Thx虽然