2013-07-18 9 views
15

flotライブラリを使用して一連のプロットを作成しました。これらはすべて1ページに表示されます。プロット($ .plot( 'placeholder'、data、options))を再プロットしなくても、X軸の最小値と最大値のオプション(options.xaxis.min、options.axis.max)の値を更新する方法はありますか?Flot JQueryライブラリを使用して既存のプロットの最小/最大軸を変更する

私はこの解決策を見つけました:http://osdir.com/ml/flot-graphs/2012-02/msg00064.html これは、次の行がそれをするが、私にとってはうまくいかないことを示唆しています - この呼び出しに基づいてプロットの表示minとmaxは変更されません。

monitorGraph.getOptions().xaxes[0].max = xaxis.max; 

グラフのxaxisの最大値と最小値を更新する際のヒントは、非常に高く評価されます。

EDIT:

以下ソリューション次のコードは、既存のプロットを取る見える範囲を更新し、非常に軽量で効率的な方法でそれを再描画します。

  plot.getOptions().xaxes[0].min = time.start; 
      plot.getOptions().xaxes[0].max = time.end; 
      plot.setupGrid(); 
      plot.draw(); 
+0

futherを指定するには:私は、プロットは新しいxの最小値と最大値を反映したいと思いますが、私は再プロットしたくありませんそれは非常に高価で、プロセスを遅くしているようだから完全に – jfaghihnassiri

答えて

12

あなたはy軸の最大高さの値を設定した後、

yourPlot.setupGrid(); 

ない、あなたがしたいが、私はそれがトリックを行い思うほどスムーズになりますかどうかわからを試してみてください。

+0

これは多くの助けになりました! .plotを毎回呼び出すよりも大幅に改善されました。ありがとうございました! – jfaghihnassiri

+0

おっと、2番目の一見にあります。 myPlot.setupGrid(); は、プロットを視覚的に更新することもありません。何か案は? – jfaghihnassiri

+0

Hmmm私はflotのウェブサイトに行って、コンソールでちょうどびっくりしました。多分setupGrideを試してからdraw()を試してみてください。 –

10

あなたはまた、動的軸オプションでMIN/MAXパラメータを変更することができます。

plot.getAxes().xaxis.options.min = 0; 
plot.getAxes().xaxis.options.max = 999; 

plot.setupGrid(); 
plot.draw(); 
関連する問題