Example usage for org.jfree.data.time SimpleTimePeriod SimpleTimePeriod

List of usage examples for org.jfree.data.time SimpleTimePeriod SimpleTimePeriod

Introduction

In this page you can find the example usage for org.jfree.data.time SimpleTimePeriod SimpleTimePeriod.

Prototype

public SimpleTimePeriod(Date start, Date end) 

Source Link

Document

Creates a new time allocation.

Usage

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;

}