Package org.jfree.data.xy
Class XYSeriesCollection
- 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:
java.beans.VetoableChangeListener,java.io.ObjectInputValidation,java.io.Serializable,java.lang.Cloneable,java.util.EventListener,PublicCloneable,DomainInfo,Dataset,SeriesChangeListener,SeriesDataset,RangeInfo,IntervalXYDataset,XYDataset
public class XYSeriesCollection extends AbstractIntervalXYDataset implements IntervalXYDataset, DomainInfo, RangeInfo, java.beans.VetoableChangeListener, PublicCloneable, java.io.Serializable
Represents a collection ofXYSeriesobjects that can be used as a dataset.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.ListdataThe series that are included in the collection.private IntervalXYDelegateintervalDelegateThe interval delegate (used to calculate the start and end x-values).private static longserialVersionUIDFor serialization.
-
Constructor Summary
Constructors Constructor Description XYSeriesCollection()Constructs an empty dataset.XYSeriesCollection(XYSeries series)Constructs a dataset and populates it with a single series.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddSeries(XYSeries series)Adds a series to the collection and sends aDatasetChangeEventto all registered listeners.java.lang.Objectclone()Returns a clone of this instance.booleanequals(java.lang.Object obj)Tests this collection for equality with an arbitrary object.RangegetDomainBounds(boolean includeInterval)Returns the range of the values in this dataset's domain.doublegetDomainLowerBound(boolean includeInterval)Returns the minimum x-value in the dataset.DomainOrdergetDomainOrder()Returns the order of the domain (X) values, if this is known.doublegetDomainUpperBound(boolean includeInterval)Returns the maximum x-value in the dataset.java.lang.NumbergetEndX(int series, int item)Returns the ending X value for the specified series and item.java.lang.NumbergetEndY(int series, int item)Returns the ending Y value for the specified series and item.doublegetIntervalPositionFactor()Returns the interval position factor.doublegetIntervalWidth()Returns the interval width.intgetItemCount(int series)Returns the number of items in the specified series.RangegetRangeBounds(boolean includeInterval)Returns the range of the values in this dataset's range.doublegetRangeLowerBound(boolean includeInterval)Returns the minimum y-value in the dataset.doublegetRangeUpperBound(boolean includeInterval)Returns the maximum y-value in the dataset.java.util.ListgetSeries()Returns a list of all the series in the collection.XYSeriesgetSeries(int series)Returns a series from the collection.XYSeriesgetSeries(java.lang.Comparable key)Returns a series from the collection.intgetSeriesCount()Returns the number of series in the collection.intgetSeriesIndex(java.lang.Comparable key)Returns the index of the series with the specified key, or -1 if no series has that key.java.lang.ComparablegetSeriesKey(int series)Returns the key for a series.java.lang.NumbergetStartX(int series, int item)Returns the starting X value for the specified series and item.java.lang.NumbergetStartY(int series, int item)Returns the starting Y value for the specified series and item.java.lang.NumbergetX(int series, int item)Returns the x-value for the specified series and item.java.lang.NumbergetY(int series, int index)Returns the y-value for the specified series and item.inthashCode()Returns a hash code.intindexOf(XYSeries series)Returns the index of the specified series, or -1 if that series is not present in the dataset.booleanisAutoWidth()Returns whether the interval width is automatically calculated or not.private voidreadObject(java.io.ObjectInputStream stream)Provides serialization support.voidremoveAllSeries()Removes all the series from the collection and sends aDatasetChangeEventto all registered listeners.voidremoveSeries(int series)Removes a series from the collection and sends aDatasetChangeEventto all registered listeners.voidremoveSeries(XYSeries series)Removes a series from the collection and sends aDatasetChangeEventto all registered listeners.voidsetAutoWidth(boolean b)Sets the flag that indicates whether the interval width is automatically calculated or not.voidsetIntervalPositionFactor(double factor)Sets the interval position factor.voidsetIntervalWidth(double width)Sets the interval width and sends aDatasetChangeEventto all registered listeners.voidvetoableChange(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.private voidwriteObject(java.io.ObjectOutputStream stream)Provides serialization support.-
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, canEqual, 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
-
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
For serialization.- See Also:
- Constant Field Values
-
data
private java.util.List data
The series that are included in the collection.
-
intervalDelegate
private IntervalXYDelegate intervalDelegate
The interval delegate (used to calculate the start and end x-values).
-
-
Constructor Detail
-
XYSeriesCollection
public XYSeriesCollection()
Constructs an empty dataset.
-
XYSeriesCollection
public XYSeriesCollection(XYSeries series)
Constructs a dataset and populates it with a single series.- Parameters:
series- the series (nullignored).
-
-
Method Detail
-
getDomainOrder
public DomainOrder getDomainOrder()
Returns the order of the domain (X) values, if this is known.- Specified by:
getDomainOrderin interfaceXYDataset- Overrides:
getDomainOrderin classAbstractXYDataset- Returns:
- The domain order.
-
addSeries
public void addSeries(XYSeries series)
Adds a series to the collection and sends aDatasetChangeEventto all registered listeners.- Parameters:
series- the series (nullnot permitted).- Throws:
java.lang.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 aDatasetChangeEventto all registered listeners.- Parameters:
series- the series index (zero-based).
-
removeSeries
public void removeSeries(XYSeries series)
Removes a series from the collection and sends aDatasetChangeEventto all registered listeners.- Parameters:
series- the series (nullnot permitted).
-
removeAllSeries
public void removeAllSeries()
Removes all the series from the collection and sends aDatasetChangeEventto all registered listeners.
-
getSeriesCount
public int getSeriesCount()
Returns the number of series in the collection.- Specified by:
getSeriesCountin interfaceSeriesDataset- Specified by:
getSeriesCountin classAbstractSeriesDataset- Returns:
- The series count.
-
getSeries
public java.util.List getSeries()
Returns a list of all the series in the collection.- Returns:
- The list (which is unmodifiable).
-
indexOf
public int indexOf(XYSeries series)
Returns the index of the specified series, or -1 if that series is not present in the dataset.- Parameters:
series- the series (nullnot permitted).- Returns:
- The series index.
-
getSeries
public XYSeries getSeries(int series)
Returns a series from the collection.- Parameters:
series- the series index (zero-based).- Returns:
- The series.
- Throws:
java.lang.IllegalArgumentException- ifseriesis not in the range0togetSeriesCount() - 1.
-
getSeries
public XYSeries getSeries(java.lang.Comparable key)
Returns a series from the collection.- Parameters:
key- the key (nullnot permitted).- Returns:
- The series with the specified key.
- Throws:
UnknownKeyException- ifkeyis not found in the collection.
-
getSeriesKey
public java.lang.Comparable getSeriesKey(int series)
Returns the key for a series.- Specified by:
getSeriesKeyin interfaceSeriesDataset- Specified by:
getSeriesKeyin classAbstractSeriesDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- The key for a series.
- Throws:
java.lang.IllegalArgumentException- ifseriesis not in the specified range.
-
getSeriesIndex
public int getSeriesIndex(java.lang.Comparable key)
Returns the index of the series with the specified key, or -1 if no series has that key.- Parameters:
key- the key (nullnot permitted).- Returns:
- The index.
-
getItemCount
public int getItemCount(int series)
Returns the number of items in the specified series.- Specified by:
getItemCountin interfaceXYDataset- Parameters:
series- the series (zero-based index).- Returns:
- The item count.
- Throws:
java.lang.IllegalArgumentException- ifseriesis not in the range0togetSeriesCount() - 1.
-
getX
public java.lang.Number getX(int series, int item)Returns the x-value for the specified series and item.
-
getStartX
public java.lang.Number getStartX(int series, int item)Returns the starting X value for the specified series and item.- Specified by:
getStartXin interfaceIntervalXYDataset- Parameters:
series- the series (zero-based index).item- the item (zero-based index).- Returns:
- The starting X value.
-
getEndX
public java.lang.Number getEndX(int series, int item)Returns the ending X value for the specified series and item.- Specified by:
getEndXin interfaceIntervalXYDataset- Parameters:
series- the series (zero-based index).item- the item (zero-based index).- Returns:
- The ending X value.
-
getY
public java.lang.Number getY(int series, int index)Returns the y-value for the specified series and item.
-
getStartY
public java.lang.Number getStartY(int series, int item)Returns the starting Y value for the specified series and item.- Specified by:
getStartYin interfaceIntervalXYDataset- Parameters:
series- the series (zero-based index).item- the item (zero-based index).- Returns:
- The starting Y value.
-
getEndY
public java.lang.Number getEndY(int series, int item)Returns the ending Y value for the specified series and item.- Specified by:
getEndYin interfaceIntervalXYDataset- Parameters:
series- the series (zero-based index).item- the item (zero-based index).- Returns:
- The ending Y value.
-
equals
public boolean equals(java.lang.Object obj)
Tests this collection for equality with an arbitrary object.- Overrides:
equalsin classAbstractDataset- Parameters:
obj- the object (nullpermitted).- Returns:
- A boolean.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionReturns a clone of this instance.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classAbstractDataset- Returns:
- A clone.
- Throws:
java.lang.CloneNotSupportedException- if there is a problem.
-
hashCode
public int hashCode()
Returns a hash code.- Overrides:
hashCodein classAbstractDataset- Returns:
- A hash code.
-
getDomainLowerBound
public double getDomainLowerBound(boolean includeInterval)
Returns the minimum x-value in the dataset.- Specified by:
getDomainLowerBoundin interfaceDomainInfo- Parameters:
includeInterval- a flag that determines whether 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:
getDomainUpperBoundin interfaceDomainInfo- Parameters:
includeInterval- a flag that determines whether the x-interval is taken into account.- Returns:
- The maximum value.
-
getDomainBounds
public Range getDomainBounds(boolean includeInterval)
Returns the range of the values in this dataset's domain.- Specified by:
getDomainBoundsin interfaceDomainInfo- Parameters:
includeInterval- a flag that determines whether the x-interval is taken into account.- Returns:
- The range (or
nullif 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 aDatasetChangeEventto 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
public Range getRangeBounds(boolean includeInterval)
Returns the range of the values in this dataset's range.- Specified by:
getRangeBoundsin interfaceRangeInfo- Parameters:
includeInterval- ignored.- Returns:
- The range (or
nullif the dataset contains no values).
-
getRangeLowerBound
public double getRangeLowerBound(boolean includeInterval)
Returns the minimum y-value in the dataset.- Specified by:
getRangeLowerBoundin interfaceRangeInfo- Parameters:
includeInterval- a flag that determines whether 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:
getRangeUpperBoundin interfaceRangeInfo- Parameters:
includeInterval- a flag that determines whether the y-interval is taken into account.- Returns:
- The maximum value.
-
vetoableChange
public void vetoableChange(java.beans.PropertyChangeEvent e) throws java.beans.PropertyVetoExceptionReceives 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:
vetoableChangein interfacejava.beans.VetoableChangeListener- Parameters:
e- the event.- Throws:
java.beans.PropertyVetoException- if the series name is already present in the collection.
-
writeObject
private void writeObject(java.io.ObjectOutputStream stream) throws java.io.IOExceptionProvides serialization support.- Parameters:
stream- the output stream.- Throws:
java.io.IOException- if there is an I/O error.
-
readObject
private void readObject(java.io.ObjectInputStream stream) throws java.io.IOException, java.lang.ClassNotFoundExceptionProvides serialization support.- Parameters:
stream- the input stream.- Throws:
java.io.IOException- if there is an I/O error.java.lang.ClassNotFoundException- if there is a classpath problem.
-
-