## org.jfree.data
Class DefaultTableXYDataset

    java.lang.Object
      org.jfree.data.AbstractDataset
          org.jfree.data.AbstractSeriesDataset
              org.jfree.data.AbstractXYDataset
                  org.jfree.data.AbstractIntervalXYDataset
                      org.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.