Java JFreeChart addBin是否具有竞争条件?

Java JFreeChart addBin是否具有竞争条件?,java,plot,jfreechart,race-condition,Java,Plot,Jfreechart,Race Condition,我目前正在做一个项目,我想画一些测量时间。为此,我使用了JFreeChart 1.0.13 我想用SimpleHistogramBins创建一个直方图,然后将数据添加到这些容器中。代码如下: Double min = Collections.min(values); Double max = Collections.max(values); Double current = min; int range = 1000; double minimalOffs

我目前正在做一个项目,我想画一些测量时间。为此,我使用了
JFreeChart 1.0.13

我想用
SimpleHistogramBin
s创建一个直方图,然后将数据添加到这些容器中。代码如下:

    Double min = Collections.min(values);
    Double max = Collections.max(values);
    Double current = min;
    int range = 1000;
    double minimalOffset = 0.0000000001;
    Double stepWidth = (max-min) / range;
    SimpleHistogramDataset dataSet = new SimpleHistogramDataset("");
    for (int i = 0; i <= range; i++) {
        SimpleHistogramBin bin;
        if (i != 0) {
            bin = new SimpleHistogramBin(current + minimalOffset, current + stepWidth);
        } else {
            bin = new SimpleHistogramBin(current, current + stepWidth);
        }
        dataSet.addBin(bin);
        current += stepWidth;
    }

    for (Double value : values) {
        System.out.println(value);
        dataSet.addObservation(value);
    }  
以前

for (Double value : values) {
        System.out.println(value);
        dataSet.addObservation(value);
}  
再说一遍,没有错误

这让我想到也许有某种比赛条件?JFreeChart是否异步添加箱子?我希望得到任何关于我为什么会有这种行为的提示


谢谢

如果有人遇到同样的问题,我找到了解决方案:

我使用的不是
SimpleHistorgramBin
,而是
historgrambin
。这基本上将我的代码缩减为几行:

HistogramDataset dataSet = new HistogramDataset();
dataSet.setType(HistogramType.FREQUENCY);
dataSet.addSeries("Hibernate", Doubles.toArray(values), 1000);
这种方法会自动创建我需要的垃圾箱,问题就解决了

HistogramDataset dataSet = new HistogramDataset();
dataSet.setType(HistogramType.FREQUENCY);
dataSet.addSeries("Hibernate", Doubles.toArray(values), 1000);