Class DefaultBoxAndWhiskerXYDataset

All Implemented Interfaces:
ObjectInputValidation, Serializable, Cloneable, EventListener, Dataset, RangeInfo, SeriesChangeListener, SeriesDataset, BoxAndWhiskerXYDataset, XYDataset

public class DefaultBoxAndWhiskerXYDataset
extends AbstractXYDataset
implements BoxAndWhiskerXYDataset, RangeInfo
A simple implementation of the BoxAndWhiskerXYDataset.
Author:
David Browning
See Also:
Serialized Form
  • Constructor Details

    • DefaultBoxAndWhiskerXYDataset

      public DefaultBoxAndWhiskerXYDataset​(String seriesName)
      Constructs a new box and whisker dataset.

      The current implementation allows only one series in the dataset. This may be extended in a future version.

      Parameters:
      seriesName - the name of the series.
  • Method Details

    • add

      public void add​(Date date, BoxAndWhiskerItem item)
      Adds an item to the dataset.
      Parameters:
      date - the date.
      item - the item.
    • getSeriesName

      public String getSeriesName​(int i)
      Returns the name of the series stored in this dataset.
      Specified by:
      getSeriesName in interface SeriesDataset
      Specified by:
      getSeriesName in class AbstractSeriesDataset
      Parameters:
      i - the index of the series. Currently ignored.
      Returns:
      the name of this series.
    • getXValue

      public Number getXValue​(int series, int item)
      Returns the x-value for one item in a series.

      The value returned is a Long object generated from the underlying Date object.

      Specified by:
      getXValue in interface XYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the x-value.
    • getXDate

      public Date getXDate​(int series, int item)
      Returns the x-value for one item in a series, as a Date.

      This method is provided for convenience only.

      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the x-value as a Date.
    • getYValue

      public Number getYValue​(int series, int item)
      Returns the y-value for one item in a series.

      This method (from the XYDataset interface) is mapped to the getMaxNonOutlierValue(...) method.

      Specified by:
      getYValue in interface XYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the y-value.
    • getMeanValue

      public Number getMeanValue​(int series, int item)
      Returns the mean for the specified series and item.
      Specified by:
      getMeanValue in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the mean for the specified series and item.
    • getMedianValue

      public Number getMedianValue​(int series, int item)
      Returns the median-value for the specified series and item.
      Specified by:
      getMedianValue in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the median-value for the specified series and item.
    • getQ1Value

      public Number getQ1Value​(int series, int item)
      Returns the Q1 median-value for the specified series and item.
      Specified by:
      getQ1Value in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the Q1 median-value for the specified series and item.
    • getQ3Value

      public Number getQ3Value​(int series, int item)
      Returns the Q3 median-value for the specified series and item.
      Specified by:
      getQ3Value in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the Q3 median-value for the specified series and item.
    • getMinRegularValue

      public Number getMinRegularValue​(int series, int item)
      Returns the min-value for the specified series and item.
      Specified by:
      getMinRegularValue in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the min-value for the specified series and item.
    • getMaxRegularValue

      public Number getMaxRegularValue​(int series, int item)
      Returns the max-value for the specified series and item.
      Specified by:
      getMaxRegularValue in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the max-value for the specified series and item.
    • getMinOutlier

      public Number getMinOutlier​(int series, int item)
      Returns the minimum value which is not a farout.
      Specified by:
      getMinOutlier in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      a Number representing the maximum non-farout value.
    • getMaxOutlier

      public Number getMaxOutlier​(int series, int item)
      Returns the maximum value which is not a farout, ie Q3 + (interquartile range * farout coefficient).
      Specified by:
      getMaxOutlier in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      a Number representing the maximum non-farout value.
    • getOutliers

      public List getOutliers​(int series, int item)
      Returns an array of outliers for the specified series and item.
      Specified by:
      getOutliers in interface BoxAndWhiskerXYDataset
      Parameters:
      series - the series (zero-based index).
      item - the item (zero-based index).
      Returns:
      the array of outliers for the specified series and item.
    • getOutlierCoefficient

      public double getOutlierCoefficient()
      Returns the value used as the outlier coefficient. The outlier coefficient gives an indication of the degree of certainty in an unskewed distribution. Increasing the coefficient increases the number of values included. Currently only used to ensure farout coefficient is greater than the outlier coefficient
      Specified by:
      getOutlierCoefficient in interface BoxAndWhiskerXYDataset
      Returns:
      a double representing the value used to calculate outliers
    • getFaroutCoefficient

      public double getFaroutCoefficient()
      Returns the value used as the farout coefficient. The farout coefficient allows the calculation of which values will be off the graph.
      Specified by:
      getFaroutCoefficient in interface BoxAndWhiskerXYDataset
      Returns:
      a double representing the value used to calculate farouts
    • getSeriesCount

      public int getSeriesCount()
      Returns the number of series in the dataset.

      This implementation only allows one series.

      Specified by:
      getSeriesCount in interface SeriesDataset
      Specified by:
      getSeriesCount in class AbstractSeriesDataset
      Returns:
      the number of 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 index (zero-based) of the series.
      Returns:
      the number of items in the specified series.
    • setOutlierCoefficient

      public void setOutlierCoefficient​(double outlierCoefficient)
      Sets the value used as the outlier coefficient
      Parameters:
      outlierCoefficient - being a double representing the value used to calculate outliers
    • setFaroutCoefficient

      public void setFaroutCoefficient​(double faroutCoefficient)
      Sets the value used as the farouts coefficient. The farout coefficient must b greater than the outlier coefficient.
      Parameters:
      faroutCoefficient - being a double representing the value used to calculate farouts
    • getMinimumRangeValue

      public Number getMinimumRangeValue()
      Returns the minimum value in the dataset's range (or null if all the values in the range are null).
      Specified by:
      getMinimumRangeValue in interface RangeInfo
      Returns:
      the minimum value.
    • getMaximumRangeValue

      public Number getMaximumRangeValue()
      Returns the maximum value in the dataset's range (or null if all the values in the range are null).
      Specified by:
      getMaximumRangeValue in interface RangeInfo
      Returns:
      the maximum value.
    • getValueRange

      public Range getValueRange()
      Returns the range of the values in this dataset's range.
      Specified by:
      getValueRange in interface RangeInfo
      Returns:
      the range.