List of usage examples for org.jfree.data.time Minute next
@Override
public RegularTimePeriod next()
From source file:msec.org.Tools.java
private static XYDataset createDataset(OneDayValue[] oneDayValues) { TimeSeriesCollection timeseriescollection = new TimeSeriesCollection(); for (int j = 0; j < oneDayValues.length; j++) { TimeSeries timeseries = new TimeSeries(oneDayValues[j].getDate()); Minute current = new Minute(gc.getTime()); int[] data = oneDayValues[j].getValues(); int len = data.length - 1; //if it is today... check actual length for data if (oneDayValues[j].getDate().equals(Tools.nowString("yyyyMMdd"))) { for (int i = len; i >= 0; i--) { if (data[i] != 0) { len = i;/* ww w.jav a2s . co m*/ break; } } } for (int i = 0; i < len; ++i) { timeseries.add(current, (double) (data[i])); current = (Minute) current.next(); } timeseriescollection.addSeries(timeseries); } return timeseriescollection; }
From source file:org.jfree.data.time.MinuteTest.java
/** * Some checks for the testNext() method. *///ww w .j a v a 2 s. c o m @Test public void testNext() { Minute m = new Minute(30, 1, 12, 12, 2000); m = (Minute) m.next(); assertEquals(2000, m.getHour().getYear()); assertEquals(12, m.getHour().getMonth()); assertEquals(12, m.getHour().getDayOfMonth()); assertEquals(1, m.getHour().getHour()); assertEquals(31, m.getMinute()); m = new Minute(59, 23, 31, 12, 9999); assertNull(m.next()); }
From source file:org.jfree.data.time.junit.MinuteTest.java
/** * Some checks for the testNext() method. *///from ww w .j a v a 2 s . c om public void testNext() { Minute m = new Minute(30, 1, 12, 12, 2000); m = (Minute) m.next(); assertEquals(2000, m.getHour().getYear()); assertEquals(12, m.getHour().getMonth()); assertEquals(12, m.getHour().getDayOfMonth()); assertEquals(1, m.getHour().getHour()); assertEquals(31, m.getMinute()); m = new Minute(59, 23, 31, 12, 9999); assertNull(m.next()); }
From source file:msec.org.Tools.java
private static XYDataset createDaysDataset(ArrayList<OneDayValue> oneDayValues, GregorianCalendar startgc, OneAttrDaysChart chart) {/*from ww w. j av a2s . c o m*/ TimeSeriesCollection timeseriescollection = new TimeSeriesCollection(); TimeSeries timeseries = new TimeSeries( oneDayValues.get(0).getDate() + "-" + oneDayValues.get(oneDayValues.size() - 1).getDate()); int sum = 0; int max = 0; int min = 0; Minute current = new Minute(startgc.getTime()); for (int j = 0; j < oneDayValues.size(); j++) { int[] data = oneDayValues.get(j).getValues(); //check actual length for data int len = data.length - 1; if (j == oneDayValues.size() - 1) { //if last day is today... if (oneDayValues.get(j).getDate().equals(Tools.nowString("yyyyMMdd"))) { for (int i = len; i >= 0; i--) { if (data[i] != 0) { len = i; break; } } } } for (int i = 0; i < len; ++i) { timeseries.add(current, (double) (data[i])); sum += data[i]; max = Math.max(max, data[i]); if (min == 0) min = data[i]; else if (data[i] != 0) min = Math.min(min, data[i]); current = (Minute) current.next(); } } chart.setMax(max); chart.setMin(min); chart.setSum(sum); timeseriescollection.addSeries(timeseries); return timeseriescollection; }
From source file:it.eng.spagobi.engines.chart.bo.charttypes.blockcharts.TimeBlockChart.java
@Override public DatasetMap calculateValue() throws Exception { logger.debug("IN"); super.calculateValue(); DatasetMap datasetMap = new DatasetMap(); String res = DataSetAccessFunctions.getDataSetResultFromId(profile, getData(), parametersObject); ArrayList<Activity> activities = new ArrayList<Activity>(); RegularTimePeriod timePeriod = null; SourceBean sbRows = SourceBean.fromXMLString(res); List listAtts = sbRows.getAttributeAsList("ROW"); // Run all rows if (listAtts == null) { logger.error("Null rows retrieved from dataset"); return null; }// w w w . j av a2 s.c om int j = 0; // for each activity logger.debug("retrieved number rows: " + listAtts.size()); for (Iterator iterator = listAtts.iterator(); iterator.hasNext();) { SourceBean row = (SourceBean) iterator.next(); Activity activity = new Activity(row, beginDateFormat, beginHourFormat); activities.add(activity); logger.debug( "Activity built from " + activity.getBeginDate() + " minutes" + activity.getMinutes() != null ? activity.getMinutes().toString() : ""); if (maxDateFound != null && !activity.getBeginDate().after(maxDateFound)) { } else { maxDateFound = activity.getBeginDate(); } if (minDateFound != null && !activity.getBeginDate().before(minDateFound)) { } else { minDateFound = activity.getBeginDate(); } } // count days long daysBetween; if (dateMin != null && dateMax != null) { logger.debug( "use date limit defined in template: from " + dateMin.toString() + " to " + dateMax.toString()); daysBetween = daysBetween(dateMin, dateMax); } else { logger.debug( "use date limit found: from " + minDateFound.toString() + " to " + maxDateFound.toString()); daysBetween = daysBetween(minDateFound, maxDateFound); } logger.debug("Days between the two dates " + daysBetween); // add a date to include extremis long minutesBetweenLong = daysBetween * 24 * 60 * 2; // raddoppio in caso di sovrapposizioni int mbl = Long.valueOf(minutesBetweenLong).intValue(); DefaultXYZDataset dataset = new DefaultXYZDataset(); ArrayList<Long> xValuesList = new ArrayList<Long>(); ArrayList<Double> yValuesList = new ArrayList<Double>(); ArrayList<Double> zValuesList = new ArrayList<Double>(); annotations = new HashMap<String, AnnotationBlock>(); // run all the activities for (Iterator iterator = activities.iterator(); iterator.hasNext();) { Activity activity = (Activity) iterator.next(); // insert only if activty falls inside the min and max Range (idf defined) if (dateMin != null && dateMax != null && (activity.getBeginDate().after(dateMax) || activity.getBeginDate().before(dateMin))) { logger.debug( "Activity discarde because starting out of selected bounds in " + activity.getBeginDate()); } else { logger.debug("Inserting activity with begin date " + activity.getBeginDate() + " adn pattern " + activity.getPattern()); RegularTimePeriod rtp = new Day(activity.getBeginDate()); long secondmills = rtp.getFirstMillisecond(); Minute minute = activity.getMinutes(); for (int i = 0; i < activity.getDuration(); i++) { // convert from hour to number axis (da sessantesimi a centesimi!) Integer hour = Integer.valueOf(minute.getHourValue()); Integer minuteValue = Integer.valueOf(minute.getMinute()); Double doubleMinuteValue = Double.valueOf(((double) minuteValue.intValue())); // minuteValue : 60 = x :100 double convertedMinuteValue = (doubleMinuteValue * 100) / 60.0; double convertedMinuteValueCent = convertedMinuteValue / 100; double hourD = (double) hour.intValue(); double converted = hourD + convertedMinuteValueCent; String yVal = Double.valueOf(converted).toString(); xValuesList.add(new Long(secondmills)); yValuesList.add(Double.valueOf(yVal)); Object cosa = patternRangeIndex.get(activity.getPattern()); if (cosa != null) { zValuesList.add( Double.valueOf(patternRangeIndex.get(activity.getPattern())).doubleValue() + 0.5); } else { zValuesList.add(-1.0); } // xvalues[j]=secondmills; // yvalues[j]=Double.valueOf(yVal); // zvalues[j]=patternRangeIndex.get(activity.getPattern())+0.5; //System.out.println("Date: "+activity.getBeginDate()+":"+Double.valueOf(xvalues[j]).toString()+", Hour: "+Double.valueOf(yvalues[j]).toString()+", Value: "+Double.valueOf(zvalues[j]).toString()); if (annotations.get(activity.getCode()) == null) { AnnotationBlock annotation = new AnnotationBlock(activity.getCode()); annotation.setXPosition(xValuesList.get(j).doubleValue()); annotation.setYPosition(yValuesList.get(j).doubleValue()); annotations.put(annotation.getAnnotation(), annotation); } minute = (Minute) minute.next(); j++; } } } // create arrays double[] xvalues = new double[xValuesList.size()]; double[] yvalues = new double[yValuesList.size()]; double[] zvalues = new double[zValuesList.size()]; for (int i = 0; i < zValuesList.size(); i++) { Long l = xValuesList.get(i); xvalues[i] = l; Double d2 = yValuesList.get(i); yvalues[i] = d2; Double d = zValuesList.get(i); zvalues[i] = d; } logger.debug("adding the serie"); dataset.addSeries("Series 1", new double[][] { xvalues, yvalues, zvalues }); datasetMap.getDatasets().put("1", dataset); logger.debug("OUT"); return datasetMap; }