Jih*_*ath 3 exception jfreechart
我试图通过引入开始和结束日期来绘制使用时间序列的条形图,但是我指出了它指示的结束日期的问题:线程"main"中的异常org.jfree.data.general.SeriesException:您正在尝试添加时间段的观察4 -mai-2011但该系列已包含该时段的观察结果.不允许重复.尝试使用该addOrUpdate()方法.
final TimeSeries series2 = new TimeSeries("ip max", Day.class);
String datebegin = "04/29/2011 02:00:01";
String dateend = "05/04/2011 02:00:01";
DateFormat formatter;
Date date;
formatter = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss");
date = formatter.parse(datebegin);
Calendar cal1 = Calendar.getInstance();
cal1.setTime(date);
Date date2;
date2 = (Date) formatter.parse(dateend);
Calendar cal2 = Calendar.getInstance();
cal2.setTime(date2);
while (((cal1.compareTo(cal2)) != 0)) {
cal1.add(Calendar.HOUR, 24);
String intermediatestringdate = formatter.format(cal1.getTime());
System.out.println( intermediatestringdate);
Date intermediatedate = (Date) formatter.parse(dateend);
series2.add(new Day(intermediatedate),500);
}
Run Code Online (Sandbox Code Playgroud)
假设你正在创建使用基于时间的条形图ChartFactory.createXYBarChart()用IntervalXYDataset,只是构建你的域TimeSeries用合适TimePeriod.
private static IntervalXYDataset createDataset() {
TimeSeries series = new TimeSeries("Series");
RegularTimePeriod day = new Day(29, 4, 2011);
RegularTimePeriod end = new Day(4, 5, 2011);
int i = 1;
while (day.compareTo(end) < 1) {
series.addOrUpdate(day, i++);
day = day.next();
}
TimeSeriesCollection dataset = new TimeSeriesCollection();
dataset.addSeries(series);
return dataset;
}
Run Code Online (Sandbox Code Playgroud)
另外,请注意Day.class不再需要TimeSeries.
| 归档时间: |
|
| 查看次数: |
4326 次 |
| 最近记录: |