public class TimeSeriesCollection extends AbstractIntervalXYDataset implements XYDataset, IntervalXYDataset, DomainInfo, XYDomainInfo, XYRangeInfo, java.beans.VetoableChangeListener, java.io.Serializable
XYDataset
interface, as well as the extended
IntervalXYDataset
interface. This makes it a convenient dataset for
use with the XYPlot
class.Constructor and Description |
---|
TimeSeriesCollection()
Constructs an empty dataset, tied to the default timezone.
|
TimeSeriesCollection(TimeSeries series)
Constructs a dataset containing a single series (more can be added),
tied to the default timezone.
|
TimeSeriesCollection(TimeSeries series,
java.util.TimeZone zone)
Constructs a dataset containing a single series (more can be added),
tied to a specific timezone.
|
TimeSeriesCollection(java.util.TimeZone zone)
Constructs an empty dataset, tied to a specific timezone.
|
Modifier and Type | Method and Description |
---|---|
void |
addSeries(TimeSeries series)
Adds a series to the collection and sends a
DatasetChangeEvent to
all registered listeners. |
java.lang.Object |
clone()
Returns a clone of this time series collection.
|
boolean |
equals(java.lang.Object obj)
Tests this time series collection for equality with another object.
|
Range |
getDomainBounds(boolean includeInterval)
Returns the range of the values in this dataset's domain.
|
Range |
getDomainBounds(java.util.List visibleSeriesKeys,
boolean includeInterval)
Returns the bounds of the domain values for the specified series.
|
boolean |
getDomainIsPointsInTime()
Deprecated.
This flag is no longer used (as of 1.0.1).
|
double |
getDomainLowerBound(boolean includeInterval)
Returns the minimum x-value in the dataset.
|
DomainOrder |
getDomainOrder()
Returns the order of the domain values in this dataset.
|
double |
getDomainUpperBound(boolean includeInterval)
Returns the maximum x-value in the dataset.
|
java.lang.Number |
getEndX(int series,
int item)
Returns the ending X value for the specified series and item.
|
java.lang.Number |
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.
|
Range |
getRangeBounds(boolean includeInterval)
Returns the bounds for the y-values in the dataset.
|
Range |
getRangeBounds(java.util.List visibleSeriesKeys,
Range xRange,
boolean includeInterval)
Returns the bounds for the y-values in the dataset.
|
java.util.List |
getSeries()
Returns a list of all the series in the collection.
|
TimeSeries |
getSeries(java.lang.Comparable key)
Returns the series with the specified key, or
null if
there is no such series. |
TimeSeries |
getSeries(int series)
Returns a series.
|
int |
getSeriesCount()
Returns the number of series in the collection.
|
int |
getSeriesIndex(java.lang.Comparable key)
Returns the index of the series with the specified key, or -1 if no
series has that key.
|
java.lang.Comparable |
getSeriesKey(int series)
Returns the key for a series.
|
java.lang.Number |
getStartX(int series,
int item)
Returns the starting X value for the specified series and item.
|
java.lang.Number |
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.
|
java.lang.Number |
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.
|
TimePeriodAnchor |
getXPosition()
Returns the position within each time period that is used for the X
value when the collection is used as an
XYDataset . |
double |
getXValue(int series,
int item)
Returns the x-value (as a double primitive) for an item within a series.
|
java.lang.Number |
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 |
removeAllSeries()
Removes all the series from the collection and sends a
DatasetChangeEvent 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 a
DatasetChangeEvent to all registered listeners. |
void |
setDomainIsPointsInTime(boolean flag)
Deprecated.
This flag is no longer used, as of 1.0.1. The
includeInterval flag in methods such as
getDomainBounds(boolean) makes this unnecessary. |
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 , then sends a
DatasetChangeEvent is sent to all registered listeners. |
void |
vetoableChange(java.beans.PropertyChangeEvent e)
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.
|
getEndXValue, getEndYValue, getStartXValue, getStartYValue
getYValue
indexOf, seriesChanged
addChangeListener, fireDatasetChanged, getGroup, getNotify, hasListener, notifyListeners, removeChangeListener, setGroup, setNotify, validateObject
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
getEndXValue, getEndYValue, getStartXValue, getStartYValue
indexOf
addChangeListener, getGroup, removeChangeListener, setGroup
public TimeSeriesCollection()
public TimeSeriesCollection(java.util.TimeZone zone)
zone
- the timezone (null
permitted, will use
TimeZone.getDefault()
in that case).public TimeSeriesCollection(TimeSeries series)
series
- the series (null
permitted).public TimeSeriesCollection(TimeSeries series, java.util.TimeZone zone)
series
- a series to add to the collection (null
permitted).zone
- the timezone (null
permitted, will use
TimeZone.getDefault()
in that case).public boolean getDomainIsPointsInTime()
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.public void setDomainIsPointsInTime(boolean flag)
includeInterval
flag in methods such as
getDomainBounds(boolean)
makes this unnecessary.flag
- the flag.public DomainOrder getDomainOrder()
getDomainOrder
in interface XYDataset
getDomainOrder
in class AbstractXYDataset
DomainOrder.ASCENDING
public TimePeriodAnchor getXPosition()
XYDataset
.null
).public void setXPosition(TimePeriodAnchor anchor)
XYDataset
, then sends a
DatasetChangeEvent
is sent to all registered listeners.anchor
- the anchor position (null
not permitted).public java.util.List getSeries()
public int getSeriesCount()
getSeriesCount
in interface SeriesDataset
getSeriesCount
in class AbstractSeriesDataset
public int indexOf(TimeSeries series)
series
- the series (null
not permitted).public TimeSeries getSeries(int series)
series
- the index of the series (zero-based).public TimeSeries getSeries(java.lang.Comparable key)
null
if
there is no such series.key
- the series key (null
permitted).public java.lang.Comparable getSeriesKey(int series)
getSeriesKey
in interface SeriesDataset
getSeriesKey
in class AbstractSeriesDataset
series
- the index of the series (zero-based).public int getSeriesIndex(java.lang.Comparable key)
key
- the key (null
not permitted).public void addSeries(TimeSeries series)
DatasetChangeEvent
to
all registered listeners.series
- the series (null
not permitted).public void removeSeries(TimeSeries series)
DatasetChangeEvent
to all registered listeners.series
- the series (null
not permitted).public void removeSeries(int index)
index
- the series index (zero-based).public void removeAllSeries()
DatasetChangeEvent
to all registered listeners.public int getItemCount(int series)
getItemCount
in interface XYDataset
series
- the series index (zero-based).public double getXValue(int series, int item)
getXValue
in interface XYDataset
getXValue
in class AbstractXYDataset
series
- the series (zero-based index).item
- the item (zero-based index).public java.lang.Number getX(int series, int item)
protected long getX(RegularTimePeriod period)
period
- the time period (null
not permitted).public java.lang.Number getStartX(int series, int item)
getStartX
in interface IntervalXYDataset
series
- the series (zero-based index).item
- the item (zero-based index).public java.lang.Number getEndX(int series, int item)
getEndX
in interface IntervalXYDataset
series
- The series (zero-based index).item
- The item (zero-based index).public java.lang.Number getY(int series, int item)
public java.lang.Number getStartY(int series, int item)
getStartY
in interface IntervalXYDataset
series
- the series (zero-based index).item
- the item (zero-based index).null
).public java.lang.Number getEndY(int series, int item)
getEndY
in interface IntervalXYDataset
series
- te series (zero-based index).item
- the item (zero-based index).null
).public int[] getSurroundingItems(int series, long milliseconds)
series
- the series index.milliseconds
- the time.public double getDomainLowerBound(boolean includeInterval)
getDomainLowerBound
in interface DomainInfo
includeInterval
- a flag that determines whether or not the
x-interval is taken into account.public double getDomainUpperBound(boolean includeInterval)
getDomainUpperBound
in interface DomainInfo
includeInterval
- a flag that determines whether or not the
x-interval is taken into account.public Range getDomainBounds(boolean includeInterval)
getDomainBounds
in interface DomainInfo
includeInterval
- a flag that determines whether or not the
x-interval is taken into account.public Range getDomainBounds(java.util.List visibleSeriesKeys, boolean includeInterval)
getDomainBounds
in interface XYDomainInfo
visibleSeriesKeys
- a list of keys for the visible series.includeInterval
- include the x-interval?public Range getRangeBounds(boolean includeInterval)
includeInterval
- ignored for this dataset.null
).public Range getRangeBounds(java.util.List visibleSeriesKeys, Range xRange, boolean includeInterval)
getRangeBounds
in interface XYRangeInfo
visibleSeriesKeys
- the visible series keys.xRange
- the x-range (null
not permitted).includeInterval
- ignored.public void vetoableChange(java.beans.PropertyChangeEvent e) throws java.beans.PropertyVetoException
vetoableChange
in interface java.beans.VetoableChangeListener
e
- the event.java.beans.PropertyVetoException
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
obj
- the other object.public int hashCode()
hashCode
in class java.lang.Object
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class AbstractDataset
java.lang.CloneNotSupportedException
- if there is a problem
cloning.