如何订阅给定的JFreeChart对象以获得有关系列集更改的通知,即插入新系列或向系列添加新数据点?
发布于 2012-08-14 17:36:37
对于数据集:
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;
}
}
});https://stackoverflow.com/questions/11949280
复制相似问题