チャートにJqPlotを使用していますが、問題は、さまざまなクリックイベントでさまざまなデータをロードしたいということです。
ただし、グラフが作成され、初めてデータが読み込まれると、別のイベントが発生したときにデータをロードする方法がわかりません。つまり、チャートオブジェクトを再利用し、イベントが発生したときにデータをロード/再プロットしたいのですが...
chartObj.data = [graphData]
これは、データを再プロットするのに役立つようです。
chartObj.series[0].data = [[0, 4], [1, 7], [2, 3]];
chartObj.replot();
また、これを確認することもできます: https://groups.google.com/group/jqplot-users/browse_thread/thread/59df82899617242b/77fe0972f88aef6d%3Fq%3D%2522Groups.%2BCom%2522%2377fe0972f88aef6d&ei=iGwTS6ea t&ct = res&cd = 71&source = groups&usg = AFQjCNHotAa6Z5CIi_-BGTHr_k766ZXXLQ?hl = en 、お役に立てば幸いです。
jqplotは、高速で動的なデータ更新を可能にします。
ドキュメント (データセクション)によると、 "オプションオブジェクトでデータを指定しないでください..."(- フィドル )
plot1.replot({data: [storedData]}); // data should not be passed this way
"...ただし、$。jqplot()関数の2番目の引数として渡されます。"
if (plot1) plot1.destroy();
plot1 = $.jqplot('chart1', [storedData]); // similar speed to replot
fiddle は、これが同様のパフォーマンスで実行できることを示しています。
グラフをレンダリングする前に、空のグラフdiv
$('#graphDiv').empty();
plot = $.jqplot('graphDiv', [graphValues], graphOptions);
Redrawこれにより、プロットデータとプロパティを変更し、プロットを完全にクリアして再描画することができます。