Example usage for org.jfree.data.time TimeSeries getIndex

List of usage examples for org.jfree.data.time TimeSeries getIndex

Introduction

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

Prototype

public int getIndex(RegularTimePeriod period) 

Source Link

Document

Returns the index for the item (if any) that corresponds to a time period.

Usage

From source file:org.activequant.util.charting.Chart.java

/**
 * Deletes data points that are older than given time stamp from <em>all datasets</em>.
 * This allows to keep sliding window of the data with the given width.
 * //from   ww  w  . j  av a2s  .  com
 * @param datasetIndex index of the dataset to truncate.
 * 
 * @param timeStamp truncation threshold.
 */
public void deleteBefore(TimeStamp timeStamp) {
    for (TimeSeries ts : datasets) {
        int index = ts.getIndex(new Millisecond(timeStamp.getDate()));
        if (index >= 0) {
            ts.delete(0, index);
        }
    }
}

From source file:org.activequant.util.charting.Chart.java

/**
 * Deletes data points from a given dataset which are older than the time stamp.
 * This allows to keep sliding window of the data with the given width.
 * //from  w  ww  .  j  av  a2s.c  om
 * @param datasetIndex index of the dataset to truncate.
 * 
 * @param timeStamp truncation threshold.
 */
public void deleteBefore(int datasetIndex, TimeStamp timeStamp) {
    if (datasetIndex >= datasets.size()) {
        throw new IllegalArgumentException(
                "wrong dataset index: size=" + datasets.size() + ", index=" + datasetIndex);
    }
    TimeSeries ts = datasets.get(datasetIndex);
    int index = ts.getIndex(new Millisecond(timeStamp.getDate()));
    if (index >= 0) {
        ts.delete(0, index);
    }
}

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

/**
 * Some checks for the getIndex() method.
 */// w  w  w.  j a  v a  2 s .c o  m
public void testGetIndex() {
    TimeSeries series = new TimeSeries("Series");
    assertEquals(-1, series.getIndex(new Month(1, 2003)));

    series.add(new Month(1, 2003), 45.0);
    assertEquals(0, series.getIndex(new Month(1, 2003)));
    assertEquals(-1, series.getIndex(new Month(12, 2002)));
    assertEquals(-2, series.getIndex(new Month(2, 2003)));

    series.add(new Month(3, 2003), 55.0);
    assertEquals(-1, series.getIndex(new Month(12, 2002)));
    assertEquals(0, series.getIndex(new Month(1, 2003)));
    assertEquals(-2, series.getIndex(new Month(2, 2003)));
    assertEquals(1, series.getIndex(new Month(3, 2003)));
    assertEquals(-3, series.getIndex(new Month(4, 2003)));
}

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

/**
 * Some checks for the getIndex() method.
 *///from ww w  .  j a v a2 s.c om
@Test
public void testGetIndex() {
    TimeSeries series = new TimeSeries("Series", Month.class);
    assertEquals(-1, series.getIndex(new Month(1, 2003)));

    series.add(new Month(1, 2003), 45.0);
    assertEquals(0, series.getIndex(new Month(1, 2003)));
    assertEquals(-1, series.getIndex(new Month(12, 2002)));
    assertEquals(-2, series.getIndex(new Month(2, 2003)));

    series.add(new Month(3, 2003), 55.0);
    assertEquals(-1, series.getIndex(new Month(12, 2002)));
    assertEquals(0, series.getIndex(new Month(1, 2003)));
    assertEquals(-2, series.getIndex(new Month(2, 2003)));
    assertEquals(1, series.getIndex(new Month(3, 2003)));
    assertEquals(-3, series.getIndex(new Month(4, 2003)));
}

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

/**
 * Some checks for the removeAgedItems() method.
 *//*  w  w w. j a va  2 s.  c om*/
public void testRemoveAgedItems() {
    TimeSeries series = new TimeSeries("Test Series");
    series.addChangeListener(this);
    assertEquals(Long.MAX_VALUE, series.getMaximumItemAge());
    assertEquals(Integer.MAX_VALUE, series.getMaximumItemCount());
    this.gotSeriesChangeEvent = false;

    // test empty series
    series.removeAgedItems(true);
    assertEquals(0, series.getItemCount());
    assertFalse(this.gotSeriesChangeEvent);

    // test series with one item
    series.add(new Year(1999), 1.0);
    series.setMaximumItemAge(0);
    this.gotSeriesChangeEvent = false;
    series.removeAgedItems(true);
    assertEquals(1, series.getItemCount());
    assertFalse(this.gotSeriesChangeEvent);

    // test series with two items
    series.setMaximumItemAge(10);
    series.add(new Year(2001), 2.0);
    this.gotSeriesChangeEvent = false;
    series.setMaximumItemAge(2);
    assertEquals(2, series.getItemCount());
    assertEquals(0, series.getIndex(new Year(1999)));
    assertFalse(this.gotSeriesChangeEvent);
    series.setMaximumItemAge(1);
    assertEquals(1, series.getItemCount());
    assertEquals(0, series.getIndex(new Year(2001)));
    assertTrue(this.gotSeriesChangeEvent);
}

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

/**
 * Some checks for the removeAgedItems() method.
 *//*from  ww  w  .j  a  v  a 2s  .  c o  m*/
@Test
public void testRemoveAgedItems() {
    TimeSeries series = new TimeSeries("Test Series", Year.class);
    series.addChangeListener(this);
    assertEquals(Long.MAX_VALUE, series.getMaximumItemAge());
    assertEquals(Integer.MAX_VALUE, series.getMaximumItemCount());
    this.gotSeriesChangeEvent = false;

    // test empty series
    series.removeAgedItems(true);
    assertEquals(0, series.getItemCount());
    assertFalse(this.gotSeriesChangeEvent);

    // test series with one item
    series.add(new Year(1999), 1.0);
    series.setMaximumItemAge(0);
    this.gotSeriesChangeEvent = false;
    series.removeAgedItems(true);
    assertEquals(1, series.getItemCount());
    assertFalse(this.gotSeriesChangeEvent);

    // test series with two items
    series.setMaximumItemAge(10);
    series.add(new Year(2001), 2.0);
    this.gotSeriesChangeEvent = false;
    series.setMaximumItemAge(2);
    assertEquals(2, series.getItemCount());
    assertEquals(0, series.getIndex(new Year(1999)));
    assertFalse(this.gotSeriesChangeEvent);
    series.setMaximumItemAge(1);
    assertEquals(1, series.getItemCount());
    assertEquals(0, series.getIndex(new Year(2001)));
    assertTrue(this.gotSeriesChangeEvent);
}