シリーズセットへの変更、つまり、新しいシリーズが挿入された、または新しいデータポイントがシリーズに追加されたという通知を受け取るために、特定のJFreeChartオブジェクトをサブスクライブするにはどうすればよいですか?
質問する
1756 次
1 に答える
2
データセットの場合:
Dataset coll = new XYSeriesCollection();
coll.addChangeListener(new DatasetChangeListener() {
@Override
public void datasetChanged(DatasetChangeEvent arg0) {
// TODO Auto-generated method stub
}
});
またはJFreeChart自体の場合:
JFreeChart chart = createChart();
chart.addChangeListener(new ChartChangeListener() {
@Override
public void chartChanged(ChartChangeEvent arg0) {
// TODO Auto-generated method stub
}
});
そして、それは中間のプロットと最後のシリーズでも機能すると確信しています。
編集:追加/削除されたシリーズのみをリッスンするには:
final XYSeriesCollection coll = new XYSeriesCollection();
coll.addChangeListener(new DatasetChangeListener() {
private int numberOfSeries = -1;
@Override
public void datasetChanged(DatasetChangeEvent arg0) {
int numberOfSeriesNew = coll.getSeriesCount();
if (numberOfSeriesNew == numberOfSeries) {
// no series was added/removed
} else if (numberOfSeriesNew < numberOfSeries) {
// series was removed
numberOfSeries = numberOfSeriesNew;
} else {
// series was added
numberOfSeries = numberOfSeriesNew;
}
}
});
于 2012-08-14T09:36:37.027 に答える