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.xy.XYSeriesCollection
- All Implemented Interfaces:
VetoableChangeListener
,ObjectInputValidation
,Serializable
,Cloneable
,EventListener
,PublicCloneable
,DomainInfo
,Dataset
,SeriesChangeListener
,SeriesDataset
,RangeInfo
,IntervalXYDataset
,XYDataset
public class XYSeriesCollection
extends AbstractIntervalXYDataset
implements IntervalXYDataset, DomainInfo, RangeInfo, VetoableChangeListener, PublicCloneable, Serializable
Represents a collection of
XYSeries
objects that can be used as a
dataset.- See Also:
-
Constructor Summary
ConstructorDescriptionConstructs an empty dataset.XYSeriesCollection
(XYSeries series) Constructs a dataset and populates it with a single series. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a series to the collection and sends aDatasetChangeEvent
to all registered listeners.clone()
Returns a clone of this instance.boolean
Tests this collection for equality with an arbitrary object.getDomainBounds
(boolean includeInterval) Returns the range of the values in this dataset's domain.double
getDomainLowerBound
(boolean includeInterval) Returns the minimum x-value in the dataset.Returns the order of the domain (X) values, if this is known.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.double
Returns the interval position factor.double
Returns the interval width.int
getItemCount
(int series) Returns the number of items in the specified series.getRangeBounds
(boolean includeInterval) Returns the range of the values in this dataset's range.double
getRangeLowerBound
(boolean includeInterval) Returns the minimum y-value in the dataset.double
getRangeUpperBound
(boolean includeInterval) Returns the maximum y-value in the dataset.Returns a list of all the series in the collection.getSeries
(int series) Returns a series from the collection.getSeries
(Comparable key) Returns a series from the collection.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.getX
(int series, int item) Returns the x-value for the specified series and item.getY
(int series, int index) Returns the y-value for the specified series and item.int
hashCode()
Returns a hash code.int
Returns the index of the specified series, or -1 if that series is not present in the dataset.boolean
Returns whether the interval width is automatically calculated or not.void
Removes all the series from the collection and sends aDatasetChangeEvent
to all registered listeners.void
removeSeries
(int series) Removes a series from the collection and sends aDatasetChangeEvent
to all registered listeners.void
removeSeries
(XYSeries series) Removes a series from the collection and sends aDatasetChangeEvent
to all registered listeners.void
setAutoWidth
(boolean b) Sets the flag that indicates whether the interval width is automatically calculated or not.void
setIntervalPositionFactor
(double factor) Sets the interval position factor.void
setIntervalWidth
(double width) Sets the interval width and sends aDatasetChangeEvent
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
getXValue, 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
-
XYSeriesCollection
public XYSeriesCollection()Constructs an empty dataset. -
XYSeriesCollection
Constructs a dataset and populates it with a single series.- Parameters:
series
- the series (null
ignored).
-
-
Method Details
-
getDomainOrder
Returns the order of the domain (X) values, if this is known.- Specified by:
getDomainOrder
in interfaceXYDataset
- Overrides:
getDomainOrder
in classAbstractXYDataset
- Returns:
- The domain order.
-
addSeries
Adds a series to the collection and sends aDatasetChangeEvent
to all registered listeners.- Parameters:
series
- the series (null
not permitted).- Throws:
IllegalArgumentException
- if the key for the series is null or not unique within the dataset.
-
removeSeries
public void removeSeries(int series) Removes a series from the collection and sends aDatasetChangeEvent
to all registered listeners.- Parameters:
series
- the series index (zero-based).
-
removeSeries
Removes a series from the collection and sends aDatasetChangeEvent
to all registered listeners.- Parameters:
series
- the series (null
not permitted).
-
removeAllSeries
public void removeAllSeries()Removes all the series from the collection and sends aDatasetChangeEvent
to all registered listeners. -
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.
-
getSeries
Returns a list of all the series in the collection.- Returns:
- The list (which is unmodifiable).
-
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 from the collection.- Parameters:
series
- the series index (zero-based).- Returns:
- The series.
- Throws:
IllegalArgumentException
- ifseries
is not in the range0
togetSeriesCount() - 1
.
-
getSeries
Returns a series from the collection.- Parameters:
key
- the key (null
not permitted).- Returns:
- The series with the specified key.
- Throws:
UnknownKeyException
- ifkey
is not found in the collection.
-
getSeriesKey
Returns the key for a series.- Specified by:
getSeriesKey
in interfaceSeriesDataset
- Specified by:
getSeriesKey
in classAbstractSeriesDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).- Returns:
- The key for a series.
- Throws:
IllegalArgumentException
- ifseries
is not in the specified range.
-
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.
-
getItemCount
public int getItemCount(int series) Returns the number of items in the specified series.- Specified by:
getItemCount
in interfaceXYDataset
- Parameters:
series
- the series (zero-based index).- Returns:
- The item count.
- Throws:
IllegalArgumentException
- ifseries
is not in the range0
togetSeriesCount() - 1
.
-
getX
Returns the x-value for the specified series and item. -
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 starting X 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 ending X 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 starting Y value.
-
getEndY
Returns the ending Y value for the specified series and item.- Specified by:
getEndY
in interfaceIntervalXYDataset
- Parameters:
series
- the series (zero-based index).item
- the item (zero-based index).- Returns:
- The ending Y value.
-
equals
Tests this collection for equality with an arbitrary object. -
clone
Returns a clone of this instance.- Specified by:
clone
in interfacePublicCloneable
- Overrides:
clone
in classAbstractDataset
- Returns:
- A clone.
- Throws:
CloneNotSupportedException
- if there is a problem.
-
hashCode
public int hashCode()Returns a hash code. -
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 (or
null
if the dataset contains no values).
-
getIntervalWidth
public double getIntervalWidth()Returns the interval width. This is used to calculate the start and end x-values, if/when the dataset is used as anIntervalXYDataset
.- Returns:
- The interval width.
-
setIntervalWidth
public void setIntervalWidth(double width) Sets the interval width and sends aDatasetChangeEvent
to all registered listeners.- Parameters:
width
- the width (negative values not permitted).
-
getIntervalPositionFactor
public double getIntervalPositionFactor()Returns the interval position factor.- Returns:
- The interval position factor.
-
setIntervalPositionFactor
public void setIntervalPositionFactor(double factor) Sets the interval position factor. This controls where the x-value is in relation to the interval surrounding the x-value (0.0 means the x-value will be positioned at the start, 0.5 in the middle, and 1.0 at the end).- Parameters:
factor
- the factor.
-
isAutoWidth
public boolean isAutoWidth()Returns whether the interval width is automatically calculated or not.- Returns:
- Whether the width is automatically calculated or not.
-
setAutoWidth
public void setAutoWidth(boolean b) Sets the flag that indicates whether the interval width is automatically calculated or not.- Parameters:
b
- a boolean.
-
getRangeBounds
Returns the range of the values in this dataset's range.- Specified by:
getRangeBounds
in interfaceRangeInfo
- Parameters:
includeInterval
- ignored.- Returns:
- The range (or
null
if the dataset contains no values).
-
getRangeLowerBound
public double getRangeLowerBound(boolean includeInterval) Returns the minimum y-value in the dataset.- Specified by:
getRangeLowerBound
in interfaceRangeInfo
- Parameters:
includeInterval
- a flag that determines whether or not the y-interval is taken into account.- Returns:
- The minimum value.
-
getRangeUpperBound
public double getRangeUpperBound(boolean includeInterval) Returns the maximum y-value in the dataset.- Specified by:
getRangeUpperBound
in interfaceRangeInfo
- Parameters:
includeInterval
- a flag that determines whether or not the y-interval is taken into account.- Returns:
- The maximum value.
-
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
- if the series name is already present in the collection.
-