Class TimeSeriesCollection

All Implemented Interfaces:
ObjectInputValidation, Serializable, Cloneable, EventListener, Dataset, DomainInfo, IntervalXYDataset, SeriesChangeListener, SeriesDataset, XYDataset

public class TimeSeriesCollection
extends AbstractIntervalXYDataset
implements IntervalXYDataset, DomainInfo, Serializable
A collection of time series objects.

This class implements the XYDataset interface, as well as the extended IntervalXYDataset interface. This makes it a convenient dataset for use with the XYPlot class.

See Also:
Serialized Form
  • Field Details

    • START

      public static final int START
      Useful constant for controlling the x-value returned for a time period.
      See Also:
      Constant Field Values
    • MIDDLE

      public static final int MIDDLE
      Useful constant for controlling the x-value returned for a time period.
      See Also:
      Constant Field Values
    • END

      public static final int END
      Useful constant for controlling the x-value returned for a time period.
      See Also:
      Constant Field Values
  • Constructor Details

    • TimeSeriesCollection

      public TimeSeriesCollection()
      Constructs an empty dataset, tied to the default timezone.
    • TimeSeriesCollection

      public TimeSeriesCollection​(TimeZone zone)
      Constructs an empty dataset, tied to a specific timezone.
      Parameters:
      zone - the timezone.
    • TimeSeriesCollection

      public TimeSeriesCollection​(TimeSeries series)
      Constructs a dataset containing a single series (more can be added), tied to the default timezone.
      Parameters:
      series - the series.
    • TimeSeriesCollection

      public TimeSeriesCollection​(TimeSeries series, TimeZone zone)
      Constructs a dataset containing a single series (more can be added), tied to a specific timezone.
      Parameters:
      series - the series.
      zone - the timezone.
  • Method Details

    • getPosition

      public int getPosition()
      Deprecated.
      Use getXPosition().
      Returns the position of the x-value returned for a time period (START, MIDDLE, or END).
      Returns:
      The position.
    • setPosition

      public void setPosition​(int position)
      Deprecated.
      Use setXPosition(...).
      Sets the position - this controls the x-value that is returned for a particular time period.

      Use the constants START, MIDDLE and END.

      Parameters:
      position - the position.
    • getXPosition

      public TimePeriodAnchor getXPosition()
      Returns the position within each time period that is used for the X value when the collection is used as an XYDataset.
      Returns:
      The anchor position.
    • setXPosition

      public void setXPosition​(TimePeriodAnchor anchor)
      Sets the position within each time period that is used for the X values when the collection is used as an XYDataset. A DatasetChangeEvent is sent to all registered listeners.
      Parameters:
      anchor - the anchor position.
    • getDomainIsPointsInTime

      public boolean getDomainIsPointsInTime()
      Returns a flag that controls whether the domain is treated as 'points in time'.

      This flag is used when determining the max and min values for the domain. If true, then only the x-values are considered for the max and min values. If false, then the start and end x-values will also be taken into consideration

      Returns:
      the flag.
    • setDomainIsPointsInTime

      public void setDomainIsPointsInTime​(boolean flag)
      Sets a flag that controls whether the domain is treated as 'points in time', or time periods.
      Parameters:
      flag - The new value of the flag.
    • getSeries

      public List getSeries()
      Returns a list of all the series in the collection.
      Returns:
      The list (which is unmodifiable).
    • getSeriesCount

      public int getSeriesCount()
      Returns the number of series in the collection.
      Specified by:
      getSeriesCount in interface SeriesDataset
      Specified by:
      getSeriesCount in class AbstractSeriesDataset
      Returns:
      the series count.
    • getSeries

      public TimeSeries getSeries​(int series)
      Returns a series.
      Parameters:
      series - The index of the series (zero-based).
      Returns:
      the series.
    • getSeries

      public TimeSeries getSeries​(String name)
      Returns the series with the specified name, or null if there is no such series.
      Parameters:
      name - the series name.
      Returns:
      The series with the given name.
    • getSeriesName

      public String getSeriesName​(int series)
      Returns the name of a series.

      This method is provided for convenience.

      Specified by:
      getSeriesName in interface SeriesDataset
      Specified by:
      getSeriesName in class AbstractSeriesDataset
      Parameters:
      series - The index of the series (zero-based).
      Returns:
      the name of a series.
    • addSeries

      public void addSeries​(TimeSeries series)
      Adds a series to the collection.

      Notifies all registered listeners that the dataset has changed.

      Parameters:
      series - the time series.
    • removeSeries

      public void removeSeries​(TimeSeries series)
      Removes the specified series from the collection.
      Parameters:
      series - the series to remove.
    • removeSeries

      public void removeSeries​(int index)
      Removes a series from the collection.
      Parameters:
      index - the series index (zero-based).
    • removeAllSeries

      public void removeAllSeries()
      Removes all the series from the collection. A DatasetChangeEvent is sent to all registered listeners.
    • getItemCount

      public int getItemCount​(int series)
      Returns the number of items in the specified series.

      This method is provided for convenience.

      Specified by:
      getItemCount in interface XYDataset
      Parameters:
      series - The index of the series of interest (zero-based).
      Returns:
      the number of items in the specified series.
    • getXValue

      public Number getXValue​(int series, int item)
      Returns the x-value for the specified series and item.
      Specified by:
      getXValue in interface XYDataset
      Parameters:
      series - The series (zero-based index).
      item - The item (zero-based index).
      Returns:
      the x-value for the specified series and item.
    • getSurroundingItems

      public int[] getSurroundingItems​(int series, long milliseconds)
      Returns the indices of the two data items surrounding a particular millisecond value.
      Parameters:
      series - the series index.
      milliseconds - the time.
      Returns:
      An array containing the (two) indices of the items surrounding the time.
    • getStartXValue

      public Number getStartXValue​(int series, int item)
      Returns the starting X value for the specified series and item.
      Specified by:
      getStartXValue in interface IntervalXYDataset
      Parameters:
      series - The series (zero-based index).
      item - The item (zero-based index).
      Returns:
      the starting X value for the specified series and item.
    • getEndXValue

      public Number getEndXValue​(int series, int item)
      Returns the ending X value for the specified series and item.
      Specified by:
      getEndXValue in interface IntervalXYDataset
      Parameters:
      series - The series (zero-based index).
      item - The item (zero-based index).
      Returns:
      the ending X value for the specified series and item.
    • getYValue

      public Number getYValue​(int series, int item)
      Returns the y-value for the specified series and item.
      Specified by:
      getYValue in interface XYDataset
      Parameters:
      series - The series (zero-based index).
      item - The item (zero-based index).
      Returns:
      the y-value for the specified series and item.
    • getStartYValue

      public Number getStartYValue​(int series, int item)
      Returns the starting Y value for the specified series and item.
      Specified by:
      getStartYValue in interface IntervalXYDataset
      Parameters:
      series - The series (zero-based index).
      item - The item (zero-based index).
      Returns:
      the starting Y value for the specified series and item.
    • getEndYValue

      public Number getEndYValue​(int series, int item)
      Returns the ending Y value for the specified series and item.
      Specified by:
      getEndYValue in interface IntervalXYDataset
      Parameters:
      series - The series (zero-based index).
      item - The item (zero-based index).
      Returns:
      the ending Y value for the specified series and item.
    • getMinimumDomainValue

      public Number getMinimumDomainValue()
      Returns the minimum value in the dataset (or null if all the values in the domain are null).
      Specified by:
      getMinimumDomainValue in interface DomainInfo
      Returns:
      the minimum value.
    • getMaximumDomainValue

      public Number getMaximumDomainValue()
      Returns the maximum value in the dataset (or null if all the values in the domain are null).
      Specified by:
      getMaximumDomainValue in interface DomainInfo
      Returns:
      the maximum value.
    • getDomainRange

      public Range getDomainRange()
      Returns the range of the values in the series domain.
      Specified by:
      getDomainRange in interface DomainInfo
      Returns:
      The range (possibly null).
    • equals

      public boolean equals​(Object obj)
      Tests this time series collection for equality with another object.
      Overrides:
      equals in class Object
      Parameters:
      obj - the other object.
      Returns:
      A boolean.
    • hashCode

      public int hashCode()
      Returns a hash code value for the object.
      Overrides:
      hashCode in class Object
      Returns:
      the hashcode