org.jfree.data
Class DefaultTableXYDataset

java.lang.Object
  extended byorg.jfree.data.AbstractDataset
      extended byorg.jfree.data.AbstractSeriesDataset
          extended byorg.jfree.data.AbstractXYDataset
              extended byorg.jfree.data.AbstractIntervalXYDataset
                  extended byorg.jfree.data.DefaultTableXYDataset
All Implemented Interfaces:
java.lang.Cloneable, Dataset, DomainInfo, java.util.EventListener, IntervalXYDataset, java.io.ObjectInputValidation, java.io.Serializable, SeriesChangeListener, SeriesDataset, TableXYDataset, XYDataset

public class DefaultTableXYDataset
extends AbstractIntervalXYDataset
implements TableXYDataset, IntervalXYDataset, DomainInfo

An XYDataset where every series shares the same x-values (required for generating stacked area charts).

Author:
Richard Atkinson
See Also:
Serialized Form

Constructor Summary
DefaultTableXYDataset()
          Creates a new empty dataset.
DefaultTableXYDataset(boolean autoPrune)
          Creates a new empty dataset.
DefaultTableXYDataset(XYSeries series)
          Deprecated. Use regular constructor then add series.
 
Method Summary
 void addSeries(XYSeries series)
          Adds a series to the collection and sends a DatasetChangeEvent to all registered listeners.
protected  boolean canPrune(java.lang.Number x)
          Returns true if all the y-values for the specified x-value are null and false otherwise.
 boolean equals(java.lang.Object obj)
          Tests this collection for equality with an arbitrary object.
 Range getDomainRange()
          Returns the range of the values in this dataset's domain.
 java.lang.Number getEndXValue(int series, int item)
          Returns the ending X value for the specified series and item.
 java.lang.Number getEndYValue(int series, int item)
          Returns the ending Y value for the specified series and item.
 double getIntervalPositionFactor()
          Returns the interval position factor.
 double getIntervalWidth()
          returns the full interval width.
 int getItemCount()
          Returns the number of x values in the dataset.
 int getItemCount(int series)
          Returns the number of items in the specified series.
 java.lang.Number getMaximumDomainValue()
          Returns the maximum value in the dataset (or null if all the values in the domain are null).
 java.lang.Number getMinimumDomainValue()
          Returns the minimum value in the dataset (or null if all the values in the domain are null).
 XYSeries getSeries(int series)
          Returns a series.
 int getSeriesCount()
          Returns the number of series in the collection.
 java.lang.String getSeriesName(int series)
          Returns the name of a series.
 java.lang.Number getStartXValue(int series, int item)
          Returns the starting X value for the specified series and item.
 java.lang.Number getStartYValue(int series, int item)
          Returns the starting Y value for the specified series and item.
 java.lang.Number getXValue(int series, int item)
          Returns the x-value for the specified series and item.
 java.lang.Number getYValue(int series, int index)
          Returns the y-value for the specified series and item.
 int hashCode()
          Returns a hash code.
 boolean isAutoPrune()
          Returns the flag that controls whether or not x-values are removed from the dataset when the corresponding y-values are all null.
 boolean isAutoWidth()
          Returns wether the interval width is automatically calculated or not.
 void prune()
          Removes all x-values for which all the y-values are null.
 void removeAllSeries()
          Removes all the series from the collection and sends a DatasetChangeEvent to all registered listeners.
 void removeAllValuesForX(java.lang.Number x)
          Removes the items from all series for a given x value.
 void removeSeries(int series)
          Removes a series from the collection and sends a DatasetChangeEvent to all registered listeners.
 void removeSeries(XYSeries series)
          Removes a series from the collection and sends a DatasetChangeEvent to all registered listeners.
 void seriesChanged(SeriesChangeEvent event)
          This method receives notification when a series belonging to the dataset changes.
 void setAutoWidth(boolean b)
          Sets the flag that indicates wether the interval width is automatically calculated or not.
 void setIntervalPositionFactor(double d)
          Sets the interval position factor.
 void setIntervalWidth(double d)
          Sets the interval width manually.
 void updateXPoints()
          Updates the x-values for all the series in the dataset.
 
Methods inherited from class org.jfree.data.AbstractIntervalXYDataset
getEndX, getEndY, getStartX, getStartY
 
Methods inherited from class org.jfree.data.AbstractXYDataset
getX, getY
 
Methods inherited from class org.jfree.data.AbstractDataset
addChangeListener, clone, fireDatasetChanged, getGroup, notifyListeners, removeChangeListener, setGroup, validateObject
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.jfree.data.XYDataset
getX, getY
 
Methods inherited from interface org.jfree.data.Dataset
addChangeListener, getGroup, removeChangeListener, setGroup
 
Methods inherited from interface org.jfree.data.IntervalXYDataset
getEndX, getEndY, getStartX, getStartY
 

Constructor Detail

DefaultTableXYDataset

public DefaultTableXYDataset()
Creates a new empty dataset.


DefaultTableXYDataset

public DefaultTableXYDataset(boolean autoPrune)
Creates a new empty dataset.

Parameters:
autoPrune - a flag that controls whether or not x-values are removed whenever the corresponding y-values are all null.

DefaultTableXYDataset

public DefaultTableXYDataset(XYSeries series)
Deprecated. Use regular constructor then add series.

Constructs a dataset and populates it with a single time series.

Parameters:
series - the series.
Method Detail

isAutoPrune

public boolean isAutoPrune()
Returns the flag that controls whether or not x-values are removed from the dataset when the corresponding y-values are all null.

Returns:
a boolean.

addSeries

public void addSeries(XYSeries series)
Adds a series to the collection and sends a DatasetChangeEvent to all registered listeners. The series should be configured to NOT allow duplicate x-values.

Parameters:
series - the series (null not permitted).

updateXPoints

public void updateXPoints()
Updates the x-values for all the series in the dataset.


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 number of series in the collection.

getItemCount

public int getItemCount()
Returns the number of x values in the dataset.

Specified by:
getItemCount in interface TableXYDataset
Returns:
the number of x values in the dataset.

getSeries

public XYSeries getSeries(int series)
Returns a series.

Parameters:
series - the series (zero-based index).
Returns:
the series (never null).

getSeriesName

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

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

getItemCount

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

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

getXValue

public java.lang.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.

getStartXValue

public java.lang.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.

getEndXValue

public java.lang.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.

getYValue

public java.lang.Number getYValue(int series,
                                  int index)
Returns the y-value for the specified series and item.

Specified by:
getYValue in interface XYDataset
Parameters:
series - the series (zero-based index).
index - the index of the item of interest (zero-based).
Returns:
the y-value for the specified series and item (possibly null).

getStartYValue

public java.lang.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.

getEndYValue

public java.lang.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.

removeAllSeries

public void removeAllSeries()
Removes all the series from the collection and sends a DatasetChangeEvent to all registered listeners.


removeSeries

public void removeSeries(XYSeries series)
Removes a series from the collection and sends a DatasetChangeEvent to all registered listeners.

Parameters:
series - the series (null not permitted).

removeSeries

public void removeSeries(int series)
Removes a series from the collection and sends a DatasetChangeEvent to all registered listeners.

Parameters:
series - the series (zero based index).

removeAllValuesForX

public void removeAllValuesForX(java.lang.Number x)
Removes the items from all series for a given x value.

Parameters:
x - the x-value.

canPrune

protected boolean canPrune(java.lang.Number x)
Returns true if all the y-values for the specified x-value are null and false otherwise.

Parameters:
x - the x-value.
Returns:
a boolean.

prune

public void prune()
Removes all x-values for which all the y-values are null.


seriesChanged

public void seriesChanged(SeriesChangeEvent event)
This method receives notification when a series belonging to the dataset changes. It responds by updating the x-points for the entire dataset and sending a DatasetChangeEvent to all registered listeners.

Specified by:
seriesChanged in interface SeriesChangeListener
Overrides:
seriesChanged in class AbstractSeriesDataset
Parameters:
event - information about the change.

equals

public boolean equals(java.lang.Object obj)
Tests this collection for equality with an arbitrary object.

Parameters:
obj - the object (null permitted).
Returns:
A boolean.

hashCode

public int hashCode()
Returns a hash code.

Returns:
a hash code.

getDomainRange

public Range getDomainRange()
Description copied from interface: DomainInfo
Returns the range of the values in this dataset's domain.

Specified by:
getDomainRange in interface DomainInfo
Returns:
the domain range

getMaximumDomainValue

public java.lang.Number getMaximumDomainValue()
Description copied from interface: DomainInfo
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 domain value.

getMinimumDomainValue

public java.lang.Number getMinimumDomainValue()
Description copied from interface: DomainInfo
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 domain value.

getIntervalPositionFactor

public double getIntervalPositionFactor()
Returns the interval position factor.

Returns:
the interval position factor.

setIntervalPositionFactor

public void setIntervalPositionFactor(double d)
Sets the interval position factor. Must be between 0.0 and 1.0 inclusive. If the factor is 0.5, the gap is in the middle of the x values. If it is lesser than 0.5, the gap is farther to the left and if greater than 0.5 it gets farther to the right.

Parameters:
d - the new interval position factor.

getIntervalWidth

public double getIntervalWidth()
returns the full interval width.

Returns:
the interval width to use.

setIntervalWidth

public void setIntervalWidth(double d)
Sets the interval width manually.

Parameters:
d - the new interval width.

isAutoWidth

public boolean isAutoWidth()
Returns wether the interval width is automatically calculated or not.

Returns:
wether the width is automatically calcualted or not.

setAutoWidth

public void setAutoWidth(boolean b)
Sets the flag that indicates wether the interval width is automatically calculated or not.

Parameters:
b - a boolean.