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

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

Introduction

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

Prototype

public TimePeriodValues(String name) 

Source Link

Document

Creates a new (empty) collection of time period values.

Usage

From source file:com.android.ddmuilib.log.event.DisplaySyncPerf.java

/**
 * Resets the display./*w ww  . j a va2s .  c  o m*/
 */
@Override
void resetUI() {
    super.resetUI();
    XYPlot xyPlot = mChart.getXYPlot();
    xyPlot.getRangeAxis().setVisible(false);
    mTooltipGenerator = new CustomXYToolTipGenerator();

    @SuppressWarnings("unchecked")
    List<String>[] mTooltipsTmp = new List[NUM_SERIES];
    mTooltips = mTooltipsTmp;

    XYBarRenderer br = new XYBarRenderer();
    br.setUseYInterval(true);
    mDatasets = new TimePeriodValues[NUM_SERIES];

    TimePeriodValuesCollection tpvc = new YIntervalTimePeriodValuesCollection(1);
    xyPlot.setDataset(tpvc);
    xyPlot.setRenderer(br);

    for (int i = 0; i < NUM_SERIES; i++) {
        br.setSeriesPaint(i, SERIES_COLORS[i]);
        mDatasets[i] = new TimePeriodValues(SERIES_NAMES[i]);
        tpvc.addSeries(mDatasets[i]);
        mTooltips[i] = new ArrayList<String>();
        mTooltipGenerator.addToolTipSeries(mTooltips[i]);
        br.setSeriesToolTipGenerator(i, mTooltipGenerator);
    }
}

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

/**
 * Tests the equals method./*from  ww  w . j a  va2 s.  c o m*/
 */
@Test
public void testEquals() {
    TimePeriodValues s1 = new TimePeriodValues("Time Series 1");
    TimePeriodValues s2 = new TimePeriodValues("Time Series 2");
    boolean b1 = s1.equals(s2);
    assertFalse("b1", b1);

    s2.setKey("Time Series 1");
    boolean b2 = s1.equals(s2);
    assertTrue("b2", b2);

    // domain description
    s1.setDomainDescription("XYZ");
    assertFalse(s1.equals(s2));
    s2.setDomainDescription("XYZ");
    assertTrue(s1.equals(s2));

    // domain description - null
    s1.setDomainDescription(null);
    assertFalse(s1.equals(s2));
    s2.setDomainDescription(null);
    assertTrue(s1.equals(s2));

    // range description
    s1.setRangeDescription("XYZ");
    assertFalse(s1.equals(s2));
    s2.setRangeDescription("XYZ");
    assertTrue(s1.equals(s2));

    // range description - null
    s1.setRangeDescription(null);
    assertFalse(s1.equals(s2));
    s2.setRangeDescription(null);
    assertTrue(s1.equals(s2));

    RegularTimePeriod p1 = new Day();
    RegularTimePeriod p2 = p1.next();
    s1.add(p1, 100.0);
    s1.add(p2, 200.0);
    boolean b3 = s1.equals(s2);
    assertFalse("b3", b3);

    s2.add(p1, 100.0);
    s2.add(p2, 200.0);
    boolean b4 = s1.equals(s2);
    assertTrue("b4", b4);

}

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

/**
 * Some checks for the getDomainBounds() method.
 *///from ww w. j  a va 2  s.  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:ch.ksfx.web.services.chart.ObservationChartGenerator.java

public TimePeriodValues getMovingAverage(TimeSeries asset, Date startDate, Date endDate,
        Integer movingAverageSeconds) {
    TimePeriodValues movingAverageBand = new TimePeriodValues(
            "SMA" + (movingAverageSeconds / 60 / 60 / 24) + "DAYS " + asset.getName());

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

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

    assetPrices = simplifyAssetPrices(assetPrices);

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

    for (Observation ap : assetPrices) {

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

        if (movingAveragePrices.get(0).getObservationTime().after(referenceDate)) {
            continue;
        }

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

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

        movingAverage = MovingAverageCalculator.calculateMovingAverageObservation(relevantMovingAveragePrices,
                true);

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

    return movingAverageBand;
}

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

/**
 * Add a value to series A for 1999.  It should be added at index 0.
 *//*  ww  w  .ja  v a 2  s . c  o  m*/
public void testAddValue() {

    TimePeriodValues tpvs = new TimePeriodValues("Test");
    try {
        tpvs.add(new Year(1999), new Integer(1));
    } catch (SeriesException e) {
        System.err.println("Problem adding to series.");
    }

    int value = tpvs.getValue(0).intValue();
    assertEquals(1, value);

}

From source file:org.jfree.chart.demo.TimePeriodValuesDemo.java

/**
 * Creates a dataset, consisting of two series of monthly data.
 *
 * @return the dataset./*w w  w. ja va2s  . c om*/
 */
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;

}

From source file:net.commerce.zocalo.freechart.ChartTest.java

public void testEmptyGraph() throws IOException {
    String fileName = "emptyChart";
    TimePeriodValuesCollection values = new TimePeriodValuesCollection(new TimePeriodValues("testing"));
    assertFalse("should have created " + fileName + ".png", newEmptyFile("TEST", fileName).exists());

    ensureDirExists(new File("data"));
    Date lastTrade = new Date(0);
    File pngFile = ChartGenerator.writeChartFile(".", "data", fileName, values, ChartGenerator.CHART_SIZE,
            lastTrade);/*from  w w w. j  a v  a2s.co m*/
    assertEquals(new File("./data/" + fileName + "-p.png"), new File(pngFile.getPath()));
    assertTrue("empty file should be small", 10000 > pngFile.length());
}

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

/**
 * Some more checks for the getDomainBounds() method.
 * //from   ww  w .j  a va 2  s.  c  o m
 * @see #testGetDomainBoundsWithoutInterval()
 */
@Test
public void testGetDomainBoundsWithInterval() {
    // check empty dataset
    TimePeriodValuesCollection dataset = new TimePeriodValuesCollection();
    Range r = dataset.getDomainBounds(true);
    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(true);
    assertEquals(1000.0, r.getLowerBound(), EPSILON);
    assertEquals(2000.0, r.getUpperBound(), EPSILON);

    // check dataset with two time periods
    s1.add(new SimpleTimePeriod(1500L, 3000L), 2.0);
    r = dataset.getDomainBounds(true);
    assertEquals(1000.0, r.getLowerBound(), EPSILON);
    assertEquals(3000.0, r.getUpperBound(), EPSILON);

    // add a third time period
    s1.add(new SimpleTimePeriod(6000L, 7000L), 1.5);
    r = dataset.getDomainBounds(true);
    assertEquals(1000.0, r.getLowerBound(), EPSILON);
    assertEquals(7000.0, r.getUpperBound(), EPSILON);

    // add a fourth time period
    s1.add(new SimpleTimePeriod(4000L, 5000L), 1.4);
    r = dataset.getDomainBounds(true);
    assertEquals(1000.0, r.getLowerBound(), EPSILON);
    assertEquals(7000.0, r.getUpperBound(), EPSILON);
}

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

/**
 * Serialize an instance, restore it, and check for equality.
 *//*  w ww  .  ja v a2s.c o  m*/
public void testSerialization() {

    TimePeriodValues s1 = new TimePeriodValues("A test");
    s1.add(new Year(2000), 13.75);
    s1.add(new Year(2001), 11.90);
    s1.add(new Year(2002), null);
    s1.add(new Year(2005), 19.32);
    s1.add(new Year(2007), 16.89);
    TimePeriodValues s2 = null;

    try {
        ByteArrayOutputStream buffer = new ByteArrayOutputStream();
        ObjectOutput out = new ObjectOutputStream(buffer);
        out.writeObject(s1);
        out.close();

        ObjectInput in = new ObjectInputStream(new ByteArrayInputStream(buffer.toByteArray()));
        s2 = (TimePeriodValues) in.readObject();
        in.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
    assertTrue(s1.equals(s2));

}

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

/**
 * A test for bug report 1161329./*from w w  w . j  av  a  2  s.  co m*/
 */
@Test
public void test1161329() {
    TimePeriodValues tpv = new TimePeriodValues("Test");
    RegularTimePeriod t = new Day();
    tpv.add(t, 1.0);
    t = t.next();
    tpv.add(t, 2.0);
    tpv.delete(0, 1);
    assertEquals(0, tpv.getItemCount());
    tpv.add(t, 2.0);
    assertEquals(1, tpv.getItemCount());
}