2016-04-01 22 views
0

değiştirilir sonunda yeni noktayı çizer. Ancak verilerin değişmesi durumunda ve başlangıçta yapılması gereken yeni bir nokta ise sonunda çizilir. Bundan dolayı, bitiş noktası ve başlangıç ​​noktası bağlanır. Örn.,Flot grafik veri aşağıdaki flot grafik yönergesini kullanıyorum

örn.
Önceki veriler: B-C-D-E-F
Düğme
Yeni verileri tıklayın: A-B-C-D-E-F
Grafik: sayfa her şeyin düzgün çizilen alır, tazelenmiş ise B-C-D-E-F-A

(ayrıca, B ve A bağlı olsun). Böylece veri ve seçenekler doğru. Gördüğüm tüm kod tuval, yer tutucu ve $.plot() olduğu için nasıl sıfırlayacağımı bilmiyorum.
Eski:

[{"label":"temp","data":[["2016-04-01T09:19:31.750Z","25"],["2016-04-01T09:19:31.956Z","25"],["2016-04-01T09:19:32.150Z","25"],["2016-04-01T09:19:32.326Z","25"],["2016-04-01T09:19:32.664Z","25"],["2016-04-01T09:19:32.844Z","25"],["2016-04-01T09:19:33.034Z","25"],["2016-04-01T09:19:33.225Z","25"],["2016-04-01T09:19:33.414Z","25"],["2016-04-01T09:19:33.571Z","25"],["2016-04-01T09:19:33.748Z","25"]]}] 

Yeni:

[{"label":"temp","data":[["2016-03-28T09:19:31.062Z","20"],["2016-04-01T09:19:31.750Z","25"],["2016-04-01T09:19:31.956Z","25"],["2016-04-01T09:19:32.150Z","25"],["2016-04-01T09:19:32.326Z","25"],["2016-04-01T09:19:32.664Z","25"],["2016-04-01T09:19:32.844Z","25"],["2016-04-01T09:19:33.034Z","25"],["2016-04-01T09:19:33.225Z","25"],["2016-04-01T09:19:33.414Z","25"],["2016-04-01T09:19:33.571Z","25"],["2016-04-01T09:19:33.748Z","25"]]}] 

cevap

0

Ben geçici bir çözüm, Eklendi yönerge kapsamındaki bir reset anahtar kullanıyorum

İşte verilerim var. Düğmeye basıldığında onu doğru olarak değiştiririm ve sonra veri değiştiğinde init() yeniden çağrılır.

Daha da iyi bir seçenek varsa, lütfen öneriniz.

var directive = { 
    restrict: 'EA', 
    template: '<div></div>', 
    scope: { 
     dataset: '=?', 
     reset: '=', 
     options: '=', 
     series: '=', 
     callback: '=', 
     src: '=' 
    }, 
    link: link 
}; 

... 

function onDatasetChanged(dataset) 
{ 
    if (plot && !scope.reset) 
    { 
     plot.setData(dataset); 
     plot.setupGrid(); 
     return plot.draw(); 
    } 
    else 
    { 
     scope.reset = false; 
     plot = init(); 
     onSerieToggled(scope.series); 
     return plot; 
    } 
}