2014-02-08 60 views

回答

2

我不相信flot動畫插件提供這種能力。相反,它可以用一點點jquery animate魔法來完成。

addPointAnimate = function(){ 
    var series = somePlot.getData()[0]; // first series 
    var lastX = series.data[series.data.length-1][0]; // last x value 
    var opts = somePlot.getOptions(); 
    opts.xaxes[0].max += 1; // adjust xaxis to make room for new point 
    somePlot.setupGrid(); 
    $('#placeholder').animate({ 1:1 }, { 
     duration: 1000, 
     step: function (now, fx) { 
      series.data.push([lastX+fx.pos, Math.sin(lastX+fx.pos)]); // for each step of animation, push on an intermediate value 
      somePlot.setData([series]); 
      somePlot.draw(); // redraw with intermediate value 
     } 
    }); 
    return true; 
} 

這裏是一個工作fiddle

+0

優秀的答案;來自一小段代碼的精彩動畫。 – DNS