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.TimePeriodValuesTest.java

/**
 * Some tests for the getMaxMiddleIndex() method.
 *//*from   ww  w. j a va  2s.co  m*/
@Test
public void testGetMaxMiddleIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(1, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(1, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(150L, 200L), 4.0);
    assertEquals(1, s.getMaxMiddleIndex());
}

From source file:ch.ksfx.web.services.chart.ObservationChartGenerator.java

public TimePeriodValues getExponentialMovingAverage(TimeSeries asset, Date startDate, Date endDate,
        Integer emaTimeframeSeconds, Integer emaTimeframesBack, Boolean addCurrentPrice) {
    TimePeriodValues movingAverageBand = new TimePeriodValues(
            "EMA" + emaTimeframesBack + "TIMEFRAMES (" + emaTimeframeSeconds + ") " + asset.getName());

    List<Observation> assetPrices = observationDAO.queryObservationsSparse(asset.getId().intValue(), startDate,
            endDate);//from   w w  w  .j ava  2s.c o m

    //Get some earlier prices to calc exponential moving average
    List<Observation> movingAveragePrices = observationDAO.queryObservationsSparse(asset.getId().intValue(),
            (startDate.getTime() == 0l) ? startDate
                    : DateUtils.addSeconds(startDate, (emaTimeframesBack * emaTimeframeSeconds * 2) * -1),
            endDate);

    //logger.info("Calculated date which is needed " + DateUtils.addDays(startDate, emaDaysBack * -1));

    assetPrices = simplifyAssetPrices(assetPrices);

    Integer filterSizer = 0;
    List<Observation> relevantMovingAveragePrices = null;
    Double movingAverage = null;

    for (Observation ap : assetPrices) {

        Date referenceDate = DateUtils.addSeconds(ap.getObservationTime(),
                (emaTimeframesBack * emaTimeframeSeconds) * -1);

        if (movingAveragePrices.get(0).getObservationTime().after(referenceDate)) {
            logger.info("Could not calc EMA earliest available date is "
                    + movingAveragePrices.get(0).getObservationTime());
            continue;
        }

        /*
        for (Integer iI = filterSizer; iI < movingAveragePrices.size(); iI++) {
        if (movingAveragePrices.get(iI + 1).getPricingTime().after(referenceDate)) {
            //We went too far, begin index was the last one
            filterSizer = iI;
            break;
        }
        }
        */

        relevantMovingAveragePrices = movingAveragePrices.subList(filterSizer, movingAveragePrices.indexOf(ap));

        logger.info("Calculating EMA");
        movingAverage = MovingAverageCalculator.calcExponentialMovingAverageObservation(emaTimeframeSeconds,
                emaTimeframesBack, relevantMovingAveragePrices, true, addCurrentPrice, null);

        movingAverageBand.add(new SimpleTimePeriod(ap.getObservationTime(), ap.getObservationTime()),
                movingAverage);
    }

    return movingAverageBand;
}

From source file:org.jfree.data.time.junit.TimePeriodValuesTest.java

/**
 * Some tests for the getMinStartIndex() method.
 *//*from ww w . j  a v a 2 s.com*/
public void testGetMinStartIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMinStartIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMinStartIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(0, s.getMinStartIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(2, s.getMinStartIndex());
}

From source file:org.jfree.data.time.TimePeriodValuesTest.java

/**
 * Some tests for the getMinEndIndex() method.
 *///from  w  w  w.  j  av  a 2 s.  co  m
@Test
public void getMinEndIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMinEndIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMinEndIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(0, s.getMinEndIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(2, s.getMinEndIndex());
}

From source file:org.jfree.data.time.junit.TimePeriodValuesTest.java

/**
 * Some tests for the getMaxStartIndex() method.
 *//*from   ww w.  j  a v  a  2  s.  c  o m*/
public void testGetMaxStartIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMaxStartIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMaxStartIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(1, s.getMaxStartIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(1, s.getMaxStartIndex());
}

From source file:org.jfree.data.time.TimePeriodValuesTest.java

/**
 * Some tests for the getMaxEndIndex() method.
 *///from   w w  w  .ja  v a 2s .  co  m
@Test
public void getMaxEndIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMaxEndIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMaxEndIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(1, s.getMaxEndIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(1, s.getMaxEndIndex());
}

From source file:org.datacleaner.widgets.result.DateGapAnalyzerResultSwingRenderer.java

private TimePeriod createTimePeriod(long from, long to) {
    if (from > to) {
        logger.warn("An illegal from/to combination occurred: {}, {}", from, to);
    }/*  w  w w.  j  a v a2  s  .c  om*/
    return new SimpleTimePeriod(from, to);
}

From source file:org.jfree.data.time.junit.TimePeriodValuesTest.java

/**
 * Some tests for the getMinMiddleIndex() method.
 *//*  w w  w .j  a  v a2 s  .  c  o  m*/
public void testGetMinMiddleIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMinMiddleIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMinMiddleIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(0, s.getMinMiddleIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(2, s.getMinMiddleIndex());
}

From source file:tools.descartes.bungee.chart.ChartGenerator.java

private static void addDiffToDataset(double granularityInSeconds, TimeTableXYDataset dataset,
        double windowStart, long summedDiffs, long numberOfElements) {
    long diffAverage = summedDiffs / numberOfElements;
    SimpleTimePeriod timePeriod = new SimpleTimePeriod(new Date((long) windowStart),
            new Date((long) (windowStart + granularityInSeconds * 1000)));
    dataset.add(timePeriod, diffAverage, "Request Submission Delay");
}

From source file:org.jfree.data.time.junit.TimePeriodValuesTest.java

/**
 * Some tests for the getMaxMiddleIndex() method.
 *//*from  w  w w . j  a v  a2 s.  c  o  m*/
public void testGetMaxMiddleIndex() {
    TimePeriodValues s = new TimePeriodValues("Test");
    assertEquals(-1, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(100L, 200L), 1.0);
    assertEquals(0, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(300L, 400L), 2.0);
    assertEquals(1, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(0L, 50L), 3.0);
    assertEquals(1, s.getMaxMiddleIndex());
    s.add(new SimpleTimePeriod(150L, 200L), 4.0);
    assertEquals(1, s.getMaxMiddleIndex());
}