从Jfreechart中的数据集中删除现有的时间序列

时间:2014-03-17 15:37:36

标签: eclipse time-series jfreechart e4

我正在使用eclipse e4。我有三个时间序列,可以从GUI动态输入。

/*some code to calculate the entries from a hashmap*/
for (i = 0; i < statValue.length; i++) {

            if(statValue[i].equals("MIN"))
            {
            timeseries[i] = new TimeSeries(entries.getKey()+statValue[i],Second.class);
            }
            if(statValue[i].equals("MAX"))
            {
            timeseries[i] = new TimeSeries(entries.getKey()+statValue[i],Second.class);
            }
            if(statValue[i].equals("AVG"))
            {
            timeseries[i] = new TimeSeries(entries.getKey()+statValue[i],Second.class);
            }       

/* some code to calcluate the input to the timeseries */

if(statValue[i].equals("MIN")){
            for(Entry<Timestamp,Long> seriesData : MinutesToMin.entrySet()){

                System.out.println(new Second(seriesData.getKey())+" "+seriesData.getValue());
                timeseries[i].add(new Second(seriesData.getKey()), seriesData.getValue());
            }
            dataset.addSeries(timeseries[i]);
            }
            System.out.println("MAX");
            if(statValue[i].equals("MAX")){
            for(Entry<Timestamp,Long> seriesData : MinutesToMax.entrySet()){

                System.out.println(new Second(seriesData.getKey())+" "+seriesData.getValue());
                timeseries[i].add(new Second(seriesData.getKey()), seriesData.getValue());
            }
            dataset.addSeries(timeseries[i]);
            }
            System.out.println("AVG");
            if(statValue[i].equals("AVG")){
            for(Entry<Timestamp,Long> seriesData : MinutesToAvg.entrySet()){

                System.out.println(new Second(seriesData.getKey())+" "+seriesData.getValue());
                timeseries[i].add(new Second(seriesData.getKey()), seriesData.getValue());
            }
            dataset.addSeries(timeseries[i]);
            }

}

系列显示在Jfreechart中。在我的代码中,时间序列可能会根据&#34; statValue&#34;而变化。我从GUI中选择。时间序列动态添加。如果时间序已经存在,我不想添加时间序列。如何检查时间序列是否已存在并且是否存在我想删除它。?

1 个答案:

答案 0 :(得分:2)

每个TimeSeries都有一个识别它的钥匙。要查看TimeSeriesCollection中是否存在TimeSeries,请使用该类中的getSeries(Comparable)方法 - 如果没有该键的系列,它将返回null。如果它返回非空值,则可以调用removeSeries(TimeSeries)方法将其删除。