Class DefaultXYZDataset

    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.List seriesKeys
      Storage for the series keys.
      private java.util.List seriesList
      Storage for the series in the dataset.
    • Constructor Summary

      Constructors 
      Constructor Description
      DefaultXYZDataset()
      Creates a new DefaultXYZDataset instance, initially containing no data.
    • Field Detail

      • seriesKeys

        private java.util.List seriesKeys
        Storage for the series keys. This list must be kept in sync with the seriesList.
      • seriesList

        private java.util.List seriesList
        Storage for the series in the dataset. We use a list because the order of the series is significant. This list must be kept in sync with the seriesKeys list.
    • Constructor Detail

      • DefaultXYZDataset

        public DefaultXYZDataset()
        Creates a new DefaultXYZDataset instance, initially containing no data.
    • Method Detail

      • getSeriesKey

        public java.lang.Comparable getSeriesKey​(int series)
        Returns the key for a series.
        Specified by:
        getSeriesKey in interface SeriesDataset
        Specified by:
        getSeriesKey in class AbstractSeriesDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        Returns:
        The key for the series.
        Throws:
        java.lang.IllegalArgumentException - if series is not in the specified range.
      • indexOf

        public int indexOf​(java.lang.Comparable seriesKey)
        Returns the index of the series with the specified key, or -1 if there is no such series in the dataset.
        Specified by:
        indexOf in interface SeriesDataset
        Overrides:
        indexOf in class AbstractSeriesDataset
        Parameters:
        seriesKey - the series key (null permitted).
        Returns:
        The index, or -1.
      • getDomainOrder

        public DomainOrder getDomainOrder()
        Returns the order of the domain (x-) values in the dataset. In this implementation, we cannot guarantee that the x-values are ordered, so this method returns DomainOrder.NONE.
        Specified by:
        getDomainOrder in interface XYDataset
        Overrides:
        getDomainOrder in class AbstractXYDataset
        Returns:
        DomainOrder.NONE.
      • 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 index (in the range 0 to getSeriesCount() - 1).
        Returns:
        The item count.
        Throws:
        java.lang.IllegalArgumentException - if series is not in the specified range.
      • getXValue

        public double getXValue​(int series,
                                int item)
        Returns the x-value for an item within a series.
        Specified by:
        getXValue in interface XYDataset
        Overrides:
        getXValue in class AbstractXYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (in the range 0 to getItemCount(series)).
        Returns:
        The x-value.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if series is not within the specified range.
        java.lang.ArrayIndexOutOfBoundsException - if item is not within the specified range.
        See Also:
        getX(int, int)
      • getX

        public java.lang.Number getX​(int series,
                                     int item)
        Returns the x-value for an item within a series.
        Specified by:
        getX in interface XYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (in the range 0 to getItemCount(series)).
        Returns:
        The x-value.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if series is not within the specified range.
        java.lang.ArrayIndexOutOfBoundsException - if item is not within the specified range.
        See Also:
        getXValue(int, int)
      • getYValue

        public double getYValue​(int series,
                                int item)
        Returns the y-value for an item within a series.
        Specified by:
        getYValue in interface XYDataset
        Overrides:
        getYValue in class AbstractXYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (in the range 0 to getItemCount(series)).
        Returns:
        The y-value.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if series is not within the specified range.
        java.lang.ArrayIndexOutOfBoundsException - if item is not within the specified range.
        See Also:
        getY(int, int)
      • getY

        public java.lang.Number getY​(int series,
                                     int item)
        Returns the y-value for an item within a series.
        Specified by:
        getY in interface XYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (in the range 0 to getItemCount(series)).
        Returns:
        The y-value.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if series is not within the specified range.
        java.lang.ArrayIndexOutOfBoundsException - if item is not within the specified range.
        See Also:
        getX(int, int)
      • getZValue

        public double getZValue​(int series,
                                int item)
        Returns the z-value for an item within a series.
        Specified by:
        getZValue in interface XYZDataset
        Overrides:
        getZValue in class AbstractXYZDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (in the range 0 to getItemCount(series)).
        Returns:
        The z-value.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if series is not within the specified range.
        java.lang.ArrayIndexOutOfBoundsException - if item is not within the specified range.
        See Also:
        getZ(int, int)
      • getZ

        public java.lang.Number getZ​(int series,
                                     int item)
        Returns the z-value for an item within a series.
        Specified by:
        getZ in interface XYZDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (in the range 0 to getItemCount(series)).
        Returns:
        The z-value.
        Throws:
        java.lang.ArrayIndexOutOfBoundsException - if series is not within the specified range.
        java.lang.ArrayIndexOutOfBoundsException - if item is not within the specified range.
        See Also:
        getZ(int, int)
      • addSeries

        public void addSeries​(java.lang.Comparable seriesKey,
                              double[][] data)
        Adds a series or if a series with the same key already exists replaces the data for that series, then sends a DatasetChangeEvent to all registered listeners.
        Parameters:
        seriesKey - the series key (null not permitted).
        data - the data (must be an array with length 3, containing three arrays of equal length, the first containing the x-values, the second containing the y-values and the third containing the z-values).
      • removeSeries

        public void removeSeries​(java.lang.Comparable seriesKey)
        Removes a series from the dataset, then sends a DatasetChangeEvent to all registered listeners.
        Parameters:
        seriesKey - the series key (null not permitted).
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests this DefaultXYZDataset instance for equality with an arbitrary object. This method returns true if and only if:
        • obj is not null;
        • obj is an instance of DefaultXYDataset;
        • both datasets have the same number of series, each containing exactly the same values.
        Overrides:
        equals in class AbstractDataset
        Parameters:
        obj - the object (null permitted).
        Returns:
        A boolean.
      • hashCode

        public int hashCode()
        Returns a hash code for this instance.
        Overrides:
        hashCode in class AbstractDataset
        Returns:
        A hash code.
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Creates an independent copy of this dataset.
        Specified by:
        clone in interface PublicCloneable
        Overrides:
        clone in class AbstractDataset
        Returns:
        The cloned dataset.
        Throws:
        java.lang.CloneNotSupportedException - if there is a problem cloning the dataset (for instance, if a non-cloneable object is used for a series key).