Search code examples
javajfreechartmilliseconds

JFreeChart DynamicTimeSeriesCollection with a period of n milliseconds


I'm trying to define an applet with a chart that have to be updated every n milliseconds. For example every 500 milliseconds. This is a part of the code:

dataSet = new DynamicTimeSeriesCollection(1, 200, new Millisecond());
dataSet.setTimeBase(new Millisecond());

When I launch the application it returns me a NullPointerException raised by the second line. If I replace Milliseconds with Seconds it works.

The question is: how can I set a period of n milliseconds without having exceptions?

Thanks


Solution

  • It looks like pointsInTime is not being initialized for Millisecond, but you can do so in a subclass constructor:

    private static class MilliDTSC extends DynamicTimeSeriesCollection {
    
        public MilliDTSC(int nSeries, int nMoments, RegularTimePeriod timeSample) {
            super(nSeries, nMoments, timeSample);
            if (timeSample instanceof Millisecond) {
                this.pointsInTime = new Millisecond[nMoments];
            }
        }
    }