首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JFreeChart -侦听系列的更改

JFreeChart -侦听系列的更改
EN

Stack Overflow用户
提问于 2012-08-14 17:17:45
回答 1查看 1.7K关注 0票数 2

如何订阅给定的JFreeChart对象以获得有关系列集更改的通知,即插入新系列或向系列添加新数据点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-14 17:36:37

对于数据集:

代码语言:javascript
运行
复制
Dataset coll = new XYSeriesCollection();
coll.addChangeListener(new DatasetChangeListener() {
    @Override
    public void datasetChanged(DatasetChangeEvent arg0) {
        // TODO Auto-generated method stub
    }
});

或者对于JFreeChart本身:

代码语言:javascript
运行
复制
JFreeChart chart = createChart();
chart.addChangeListener(new ChartChangeListener() {
    @Override
    public void chartChanged(ChartChangeEvent arg0) {
        // TODO Auto-generated method stub
    }
});

我确信,这也适用于中间的情节和结尾的系列。

编辑:仅侦听已添加/已删除的系列:

代码语言:javascript
运行
复制
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;
        }
    }
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11949280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档