List of usage examples for org.jfree.data.time SimpleTimePeriod SimpleTimePeriod
public SimpleTimePeriod(Date start, Date end)
From source file:org.jfree.data.time.TimePeriodValuesCollectionTest.java
/** * Some checks for the getDomainBounds() method. *//*ww w .j a va 2s.c o m*/ @Test public void testGetDomainBoundsWithoutInterval() { // check empty dataset TimePeriodValuesCollection dataset = new TimePeriodValuesCollection(); dataset.setDomainIsPointsInTime(false); Range r = dataset.getDomainBounds(false); assertNull(r); // check dataset with one time period TimePeriodValues s1 = new TimePeriodValues("S1"); s1.add(new SimpleTimePeriod(1000L, 2000L), 1.0); dataset.addSeries(s1); r = dataset.getDomainBounds(false); assertEquals(1500.0, r.getLowerBound(), EPSILON); assertEquals(1500.0, r.getUpperBound(), EPSILON); // check dataset with two time periods s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0); r = dataset.getDomainBounds(false); assertEquals(1500.0, r.getLowerBound(), EPSILON); assertEquals(2250.0, r.getUpperBound(), EPSILON); }
From source file:pt.lsts.neptus.plugins.trex.TrexTimelinePanel.java
private Task setEndTime(Task t, double time) { TimePeriod tp = t.getDuration();/*from w w w . ja v a 2 s. c o m*/ t.setDuration(new SimpleTimePeriod(tp.getStart(), new Date((long) (time * 1000)))); return t; }
From source file:tools.descartes.bungee.chart.ChartGenerator.java
private static void addResponseTimeToDataset(TimeTableXYDataset dataset, double granularityInSeconds, long windowStart, long summedResponseTimes, long summedWorkTimes, long numberOfElements, String name) { SimpleTimePeriod timePeriod = new SimpleTimePeriod(new Date(windowStart), new Date((long) (windowStart + granularityInSeconds * 1000))); long overhead = (summedResponseTimes - summedWorkTimes) / numberOfElements; long workTime = summedWorkTimes / numberOfElements; dataset.add(timePeriod, overhead, "waiting time"); dataset.add(timePeriod, workTime, "service time"); }
From source file:org.matsim.contrib.dvrp.util.chart.ScheduleChartUtils.java
private static <T extends Task> TaskSeriesCollection createScheduleDataset(List<? extends Vehicle> vehicles, DescriptionCreator<T> descriptionCreator) { TaskSeriesCollection collection = new TaskSeriesCollection(); for (Vehicle v : vehicles) { @SuppressWarnings("unchecked") Schedule<T> schedule = (Schedule<T>) v.getSchedule(); final TaskSeries scheduleTaskSeries = new TaskSeries(v.getId().toString()); if (schedule.getStatus() == ScheduleStatus.UNPLANNED) { collection.add(scheduleTaskSeries); continue; }//from w w w . j a v a 2 s .c o m List<T> tasks = schedule.getTasks(); for (T t : tasks) { String description = descriptionCreator.create(t); TimePeriod duration = new SimpleTimePeriod(// new Date((int) Math.floor(t.getBeginTime() * 1000)), // new Date((int) Math.ceil(t.getEndTime() * 1000))); scheduleTaskSeries.add(new ChartTask<T>(description, duration, t)); } collection.add(scheduleTaskSeries); } return collection; }
From source file:graficos.GraficoGantt.java
private void agregarTareasFicticias(Hashtable<Integer, Date> actFecha_com, Hashtable<Integer, Date> actFecha_fin, Vector<Actividad> vec_ficticias) { for (Iterator<Actividad> it = vec_ficticias.iterator(); it.hasNext();) { Actividad a = it.next();//from www . j a va 2s . co m Vector<Actividad> vec_ent = a.getSucesoOrigen().getActividadesEntrantes(); Vector<Actividad> vec_sal = a.getSucesoFin().getActividadesSalientes(); boolean listo_fc = false; boolean listo_ff = false; Date fecha_com = new Date(); Date fecha_fin = new Date(); for (Iterator<Actividad> it0 = vec_ent.iterator(); it0.hasNext() && !listo_fc;) { Actividad ae = it0.next(); if (!ae.esFicticia()) { fecha_com = actFecha_fin.get(ae.getIdentificador()); listo_fc = true; } } for (Iterator<Actividad> it0 = vec_sal.iterator(); it0.hasNext() && !listo_ff;) { Actividad as = it0.next(); if (!as.esFicticia()) { fecha_fin = actFecha_com.get(as.getIdentificador()); listo_ff = true; } } if (listo_fc && listo_ff) { Task tarea = new Task("F (" + a.getIdentificador().toString() + ") " + a.getDescripcion(), new SimpleTimePeriod(fecha_com, fecha_fin)); serie_tareas_nc.add(tarea); } } }
From source file:pisco.batch.visu.BatchingChartFactory.java
public static XYDataset createLatenessDataset(Batch[] batches) { final TaskSeriesCollection coll = new TaskSeriesCollection(); for (int i = 0; i < batches.length; i++) { TaskSeries series = new TaskSeries(String.valueOf(i)); final int dd = batches[i].getDueDate(); final int compl = batches[i].getCompletionTime(); TimePeriod p = dd < compl ? new SimpleTimePeriod(dd, compl) : new SimpleTimePeriod(compl, dd); series.add(new Task("B" + i, p)); coll.add(series);//from w w w.j av a 2 s.c o m } final XYTaskDataset dataset = new XYTaskDataset(coll); dataset.setTransposed(true); return dataset; }
From source file:org.matsim.contrib.dvrp.util.chart.ScheduleCharts.java
private static TaskSeriesCollection createScheduleDataset(Collection<? extends Vehicle> vehicles, DescriptionCreator descriptionCreator) { TaskSeriesCollection collection = new TaskSeriesCollection(); for (Vehicle v : vehicles) { Schedule schedule = v.getSchedule(); final TaskSeries scheduleTaskSeries = new TaskSeries(v.getId().toString()); if (schedule.getStatus() == ScheduleStatus.UNPLANNED) { collection.add(scheduleTaskSeries); continue; }/* ww w . ja v a 2 s.com*/ for (Task t : schedule.getTasks()) { String description = descriptionCreator.create(t); TimePeriod duration = new SimpleTimePeriod(// new Date((int) Math.floor(t.getBeginTime() * 1000)), // new Date((int) Math.ceil(t.getEndTime() * 1000))); scheduleTaskSeries.add(new ChartTask(description, duration, t)); } collection.add(scheduleTaskSeries); } return collection; }
From source file:com.android.ddmuilib.log.event.DisplaySyncPerf.java
/** * Updates the display with a new event. * * @param event The event/*from w ww . j a v a 2 s . c om*/ * @param logParser The parser providing the event. */ @Override void newEvent(EventContainer event, EventLogParser logParser) { super.newEvent(event, logParser); // Handle sync operation try { if (event.mTag == EVENT_DB_OPERATION) { // 52000 db_operation (name|3),(op_type|1|5),(time|2|3) String tip = event.getValueAsString(0); long endTime = event.sec * 1000L + (event.nsec / 1000000L); int opType = Integer.parseInt(event.getValueAsString(1)); long duration = Long.parseLong(event.getValueAsString(2)); if (opType == EVENT_DB_QUERY) { mDatasets[DB_QUERY].add(new SimpleTimePeriod(endTime - duration, endTime), SERIES_YCOORD[DB_QUERY]); mTooltips[DB_QUERY].add(tip); } else if (opType == EVENT_DB_WRITE) { mDatasets[DB_WRITE].add(new SimpleTimePeriod(endTime - duration, endTime), SERIES_YCOORD[DB_WRITE]); mTooltips[DB_WRITE].add(tip); } } else if (event.mTag == EVENT_HTTP_STATS) { // 52001 http_stats (useragent|3),(response|2|3),(processing|2|3),(tx|1|2),(rx|1|2) String tip = event.getValueAsString(0) + ", tx:" + event.getValueAsString(3) + ", rx: " + event.getValueAsString(4); long endTime = event.sec * 1000L + (event.nsec / 1000000L); long netEndTime = endTime - Long.parseLong(event.getValueAsString(2)); long netStartTime = netEndTime - Long.parseLong(event.getValueAsString(1)); mDatasets[HTTP_NETWORK].add(new SimpleTimePeriod(netStartTime, netEndTime), SERIES_YCOORD[HTTP_NETWORK]); mDatasets[HTTP_PROCESSING].add(new SimpleTimePeriod(netEndTime, endTime), SERIES_YCOORD[HTTP_PROCESSING]); mTooltips[HTTP_NETWORK].add(tip); mTooltips[HTTP_PROCESSING].add(tip); } } catch (NumberFormatException e) { // This can happen when parsing events from froyo+ where the event with id 52000 // as a completely different format. For now, skip this event if this happens. } catch (InvalidTypeException e) { } }
From source file:com.android.ddmuilib.log.event.DisplaySyncHistogram.java
/** * Creates a multiple-hour time period for the histogram. * @param time Time in milliseconds.// ww w .j ava 2s. c om * @param numHoursWide: should divide into a day. * @return SimpleTimePeriod covering the number of hours and containing time. */ private SimpleTimePeriod getTimePeriod(long time, long numHoursWide) { Date date = new Date(time); TimeZone zone = RegularTimePeriod.DEFAULT_TIME_ZONE; Calendar calendar = Calendar.getInstance(zone); calendar.setTime(date); long hoursOfYear = calendar.get(Calendar.HOUR_OF_DAY) + calendar.get(Calendar.DAY_OF_YEAR) * 24; int year = calendar.get(Calendar.YEAR); hoursOfYear = (hoursOfYear / numHoursWide) * numHoursWide; calendar.clear(); calendar.set(year, 0, 1, 0, 0); // Jan 1 long start = calendar.getTimeInMillis() + hoursOfYear * 3600 * 1000; return new SimpleTimePeriod(start, start + numHoursWide * 3600 * 1000); }
From source file:org.jfree.chart.demo.TimePeriodValuesDemo.java
/** * Creates a dataset, consisting of two series of monthly data. * * @return the dataset.//from ww w .jav a 2 s . co m */ public XYDataset createDataset2() { final TimePeriodValues s1 = new TimePeriodValues("WebCOINS"); final Day today = new Day(); for (int i = 0; i < 24; i++) { final Minute m0 = new Minute(0, new Hour(i, today)); final Minute m1 = new Minute(30, new Hour(i, today)); final Minute m2 = new Minute(0, new Hour(i + 1, today)); s1.add(new SimpleTimePeriod(m0.getStart(), m1.getStart()), Math.random() * 2.0); s1.add(new SimpleTimePeriod(m1.getStart(), m2.getStart()), Math.random() * 2.0); } final TimePeriodValuesCollection dataset = new TimePeriodValuesCollection(); dataset.addSeries(s1); return dataset; }