【问题标题】:how to use Arraylist (for-loop) in Jfreechart piechart?如何在 Jfreechart 饼图中使用 Arraylist(for-loop)?
【发布时间】:2015-03-28 15:03:33
【问题描述】:

我最近开始在我的数据库中收集数据,我编写了一个代码来检索此信息、名称(语言)和该语言被计算的次数,并将其放入数组列表中。根据这些数据,我想制作一个饼图。

我已经尝试用 jfreechart 来做到这一点

有谁知道如何将我的数组列表中的数据与来自 jfreechart 的饼图 createdataset 代码一起使用,因为我的尝试在方法 createdataset 中使用 for 循环时导致失败(空饼图),因为数组列表中的数据更改,因此不想硬编码值和名称。

for 循环尝试(其他一切都默认):

public PieDataset createDataset() {
    DefaultPieDataset result = new DefaultPieDataset();
    for(Language l: languageList){
    result.setValue( l.getName(), l.getCount());
    }
    return result;
}

如果这个 for 循环是可能的,我做错了什么或者必须改变什么才能使这个工作,如果我完全关闭,我也想知道。

--编辑--

public PieDataset createDataset() {
    DefaultPieDataset result = new DefaultPieDataset();
    int count = 0;
    for(Language l: languageList){
        result.insertValue(count++, l.getName(), l.getCount());

    }
    return result;
}

【问题讨论】:

    标签: java arrays arraylist jfreechart pie-chart


    【解决方案1】:

    尝试使用insertValue api like:

    int count = 0;
    for(Language l: languageList){
        result.insertValue(count++, l.getName(), l.getCount());
    }
    

    【讨论】:

    • 我试过这样(除了 count++ 旁边的分号),并且还让它计数并且在 settter 使其递增之后,仍然是空饼图,我有数据
    • 没有 for 循环和硬编码的位置和值它确实有效,所以我相信使用 for 循环会有所帮助
    • 我怀疑,你能在你的问题中分享你修改后的代码吗?
    • 那么现在的问题是什么?你有名字和人数吗?您可以在将值插入数据集之前打印吗?
    • 我可以,我也可以给你看打印的输出,和这个循环几乎一样,只是它包含了 System.out println 用于写作
    猜你喜欢
    • 1970-01-01
    • 2019-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多