2017-02-14 10 views
0

これで私の髪を引き出します。再描画後にflotが更新されない

すべてのflotオブジェクトを画面に表示する配列を作成しました。選択プラグインを使用して、私はズーム機能を実装しようとしていました。

flotオブジェクトのIDにバインドする代わりに、クラスにバインドします。残念ながら、私は以下のコードでどこにも行きません。オプションが変更され(console.logで確認)、clearSelectionは機能しますが、グラフは再描画されません。また、私は重要だとは思っていませんが、私は時間ベースのx軸を使用しています。

$(".flot").bind("plotselected", function (event, ranges) { 

    var plot = flots['#'+event.target.id]; 

    plot.getOptions().xaxis.min = ranges.xaxis.from; 
    plot.getOptions().xaxis.max = ranges.xaxis.to; 


    plot.setupGrid(); 
    plot.clearSelection(); 
    plot.draw(); 

}); 
+0

そのコードは機能するはずです。あなたは問題を再現する[fiddle](http://jsfiddle.net)を構築できますか? – Raidri

答えて

1

私はそれを理解しました。何らかの理由で、xaxes [0] .minとyaxes [0] .minを使って軸の最小値と最大値を変更する必要がありました。

$(".flot").bind("plotselected", function (event, ranges) { 

    var plot = flots['#'+event.target.id]; 

    plot.getOptions().xaxes[0].min = ranges.xaxis.from; 
    plot.getOptions().xaxes[0].max = ranges.xaxis.to; 

    plot.setupGrid(); 
    plot.clearSelection(); 
    plot.draw(); 

}); 
関連する問題