java.lang.Object
org.jfree.data.general.AbstractDataset
org.jfree.data.general.AbstractSeriesDataset
org.jfree.data.xy.AbstractXYDataset
org.jfree.data.xy.AbstractIntervalXYDataset
org.jfree.data.time.TimeSeriesCollection
- All Implemented Interfaces:
VetoableChangeListener
,ObjectInputValidation
,Serializable
,Cloneable
,EventListener
,DomainInfo
,Dataset
,SeriesChangeListener
,SeriesDataset
,IntervalXYDataset
,XYDataset
,XYDomainInfo
,XYRangeInfo
public class TimeSeriesCollection
extends AbstractIntervalXYDataset
implements XYDataset, IntervalXYDataset, DomainInfo, XYDomainInfo, XYRangeInfo, VetoableChangeListener, 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:
-
Constructor Summary
ConstructorDescriptionConstructs an empty dataset, tied to the default timezone.TimeSeriesCollection
(TimeZone zone) Constructs an empty dataset, tied to a specific timezone.TimeSeriesCollection
(TimeSeries series) Constructs a dataset containing a single series (more can be added), tied to the default timezone.TimeSeriesCollection
(TimeSeries series, TimeZone zone) Constructs a dataset containing a single series (more can be added), tied to a specific timezone. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addSeries
(TimeSeries series) Adds a series to the collection and sends aDatasetChangeEvent
to all registered listeners.clone()
Returns a clone of this time series collection.boolean
Tests this time series collection for equality with another object.getDomainBounds
(boolean includeInterval) Returns the range of the values in this dataset's domain.getDomainBounds
(List visibleSeriesKeys, boolean includeInterval) Returns the bounds of the domain values for the specified series.double
getDomainLowerBound
(boolean includeInterval) Returns the minimum x-value in the dataset.Returns the order of the domain values in this dataset.double
getDomainUpperBound
(boolean includeInterval) Returns the maximum x-value in the dataset.getEndX
(int series, int item) Returns the ending X value for the specified series and item.getEndY
(int series, int item) Returns the ending Y value for the specified series and item.int
getItemCount
(int series) Returns the number of items in the specified series.getRangeBounds
(boolean includeInterval) Returns the bounds for the y-values in the dataset.getRangeBounds
(List visibleSeriesKeys, Range xRange, boolean includeInterval) Returns the bounds for the y-values in the dataset.Returns a list of all the series in the collection.getSeries
(int series) Returns a series.getSeries
(Comparable key) Returns the series with the specified key, ornull
if there is no such series.int
Returns the number of series in the collection.int
getSeriesIndex
(Comparable key) Returns the index of the series with the specified key, or -1 if no series has that key.getSeriesKey
(int series) Returns the key for a series.getStartX
(int series, int item) Returns the starting X value for the specified series and item.getStartY
(int series, int item) Returns the starting Y value for the specified series and item.int[]
getSurroundingItems
(int series, long milliseconds) Returns the indices of the two data items surrounding a particular millisecond value.getX
(int series, int item) Returns the x-value for the specified series and item.protected long
getX
(RegularTimePeriod period) Returns the x-value for a time period.Returns the position within each time period that is used for the X value when the collection is used as anXYDataset
.double
getXValue
(int series, int item) Returns the x-value (as a double primitive) for an item within a series.getY
(int series, int item) Returns the y-value for the specified series and item.int
hashCode()
Returns a hash code value for the object.int
indexOf
(TimeSeries series) Returns the index of the specified series, or -1 if that series is not present in the dataset.void
Removes all the series from the collection and sends aDatasetChangeEvent
to all registered listeners.void
removeSeries
(int index) Removes a series from the collection.void
removeSeries
(TimeSeries series) Removes the specified series from the collection and sends aDatasetChangeEvent
to all registered listeners.void
setXPosition
(TimePeriodAnchor anchor) Sets the position within each time period that is used for the X values when the collection is used as anXYDataset
, then sends aDatasetChangeEvent
is sent to all registered listeners.void
Receives notification that the key for one of the series in the collection has changed, and vetos it if the key is already present in the collection.Methods inherited from class org.jfree.data.xy.AbstractIntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValue
Methods inherited from class org.jfree.data.xy.AbstractXYDataset
getYValue
Methods inherited from class org.jfree.data.general.AbstractSeriesDataset
indexOf, seriesChanged
Methods inherited from class org.jfree.data.general.AbstractDataset
addChangeListener, fireDatasetChanged, getGroup, getNotify, hasListener, notifyListeners, removeChangeListener, setGroup, setNotify, validateObject
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.jfree.data.general.Dataset
addChangeListener, getGroup, removeChangeListener, setGroup
Methods inherited from interface org.jfree.data.xy.IntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValue
Methods inherited from interface org.jfree.data.general.SeriesDataset
indexOf
-
Constructor Details
-
TimeSeriesCollection
public TimeSeriesCollection()Constructs an empty dataset, tied to the default timezone. -
TimeSeriesCollection
Constructs an empty dataset, tied to a specific timezone.- Parameters:
zone
- the timezone (null
permitted, will useTimeZone.getDefault()
in that case).
-
TimeSeriesCollection
Constructs a dataset containing a single series (more can be added), tied to the default timezone.- Parameters:
series
- the series (null
permitted).
-
TimeSeriesCollection
Constructs a dataset containing a single series (more can be added), tied to a specific timezone.- Parameters:
series
- a series to add to the collection (null
permitted).zone
- the timezone (null
permitted, will useTimeZone.getDefault()
in that case).
-
-
Method Details
-
getDomainOrder
Returns the order of the domain values in this dataset.- Specified by:
getDomainOrder
in interfaceXYDataset
- Overrides:
getDomainOrder
in classAbstractXYDataset
- Returns:
DomainOrder.ASCENDING
-
getXPosition
Returns the position within each time period that is used for the X value when the collection is used as anXYDataset
.- Returns:
- The anchor position (never
null
).
-
setXPosition
Sets the position within each time period that is used for the X values when the collection is used as anXYDataset
, then sends aDatasetChangeEvent
is sent to all registered listeners.- Parameters:
anchor
- the anchor position (null
not permitted).
-
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 interfaceSeriesDataset
- Specified by:
getSeriesCount
in classAbstractSeriesDataset
- Returns:
- The series count.
-
indexOf
Returns the index of the specified series, or -1 if that series is not present in the dataset.- Parameters:
series
- the series (null
not permitted).- Returns:
- The series index.
-
getSeries
Returns a series.- Parameters:
series
- the index of the series (zero-based).- Returns:
- The series.
-
getSeries
Returns the series with the specified key, ornull
if there is no such series.- Parameters:
key
- the series key (null
permitted).- Returns:
- The series with the given key.
-
getSeriesKey
Returns the key for a series.- Specified by:
getSeriesKey
in interfaceSeriesDataset
- Specified by:
getSeriesKey
in classAbstractSeriesDataset
- Parameters:
series
- the index of the series (zero-based).- Returns:
- The key for a series.
-
getSeriesIndex
Returns the index of the series with the specified key, or -1 if no series has that key.- Parameters:
key
- the key (null
not permitted).- Returns:
- The index.
-
addSeries
Adds a series to the collection and sends aDatasetChangeEvent
to all registered listeners.- Parameters:
series
- the series (null
not permitted).
-
removeSeries
Removes the specified series from the collection and sends aDatasetChangeEvent
to all registered listeners.- Parameters:
series
- the series (null
not permitted).
-
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 and sends aDatasetChangeEvent
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 interfaceXYDataset
- Parameters:
series
- the series index (zero-based).- Returns:
- The item count.
-
getXValue
public double getXValue(int series, int item) Returns the x-value (as a double primitive) for an item within a series.- Specified by:
getXValue
in interfaceXYDataset
- Overrides:
getXValue
in classAbstractXYDataset
- Parameters:
series
- the series (zero-based index).item
- the item (zero-based index).- Returns:
- The x-value.
-
getX
Returns the x-value for the specified series and item. -
getX
Returns the x-value for a time period.- Parameters:
period
- the time period (null
not permitted).- Returns:
- The x-value.
-
getStartX
Returns the starting X value for the specified series and item.- Specified by:
getStartX
in interfaceIntervalXYDataset
- Parameters:
series
- the series (zero-based index).item
- the item (zero-based index).- Returns:
- The value.
-
getEndX
Returns the ending X value for the specified series and item.- Specified by:
getEndX
in interfaceIntervalXYDataset
- Parameters:
series
- The series (zero-based index).item
- The item (zero-based index).- Returns:
- The value.
-
getY
Returns the y-value for the specified series and item. -
getStartY
Returns the starting Y value for the specified series and item.- Specified by:
getStartY
in interfaceIntervalXYDataset
- Parameters:
series
- the series (zero-based index).item
- the item (zero-based index).- Returns:
- The value (possibly
null
).
-
getEndY
Returns the ending Y value for the specified series and item.- Specified by:
getEndY
in interfaceIntervalXYDataset
- Parameters:
series
- te series (zero-based index).item
- the item (zero-based index).- Returns:
- The value (possibly
null
).
-
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.
-
getDomainLowerBound
public double getDomainLowerBound(boolean includeInterval) Returns the minimum x-value in the dataset.- Specified by:
getDomainLowerBound
in interfaceDomainInfo
- Parameters:
includeInterval
- a flag that determines whether or not the x-interval is taken into account.- Returns:
- The minimum value.
-
getDomainUpperBound
public double getDomainUpperBound(boolean includeInterval) Returns the maximum x-value in the dataset.- Specified by:
getDomainUpperBound
in interfaceDomainInfo
- Parameters:
includeInterval
- a flag that determines whether or not the x-interval is taken into account.- Returns:
- The maximum value.
-
getDomainBounds
Returns the range of the values in this dataset's domain.- Specified by:
getDomainBounds
in interfaceDomainInfo
- Parameters:
includeInterval
- a flag that determines whether or not the x-interval is taken into account.- Returns:
- The range.
-
getDomainBounds
Returns the bounds of the domain values for the specified series.- Specified by:
getDomainBounds
in interfaceXYDomainInfo
- Parameters:
visibleSeriesKeys
- a list of keys for the visible series.includeInterval
- include the x-interval?- Returns:
- A range.
-
getRangeBounds
Returns the bounds for the y-values in the dataset.- Parameters:
includeInterval
- ignored for this dataset.- Returns:
- The range of value in the dataset (possibly
null
).
-
getRangeBounds
Returns the bounds for the y-values in the dataset.- Specified by:
getRangeBounds
in interfaceXYRangeInfo
- Parameters:
visibleSeriesKeys
- the visible series keys.xRange
- the x-range (null
not permitted).includeInterval
- ignored.- Returns:
- The bounds.
-
vetoableChange
Receives notification that the key for one of the series in the collection has changed, and vetos it if the key is already present in the collection.- Specified by:
vetoableChange
in interfaceVetoableChangeListener
- Parameters:
e
- the event.- Throws:
PropertyVetoException
-
equals
Tests this time series collection for equality with another object. -
hashCode
public int hashCode()Returns a hash code value for the object. -
clone
Returns a clone of this time series collection.- Overrides:
clone
in classAbstractDataset
- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- if there is a problem cloning.
-