Class HistogramDataset

    • Field Detail

      • serialVersionUID

        private static final long serialVersionUID
        For serialization.
        See Also:
        Constant Field Values
      • list

        private java.util.List list
        A list of maps.
    • Constructor Detail

      • HistogramDataset

        public HistogramDataset()
        Creates a new (empty) dataset with a default type of HistogramType.FREQUENCY.
    • Method Detail

      • getType

        public HistogramType getType()
        Returns the histogram type.
        Returns:
        The type (never null).
      • setType

        public void setType​(HistogramType type)
        Sets the histogram type and sends a DatasetChangeEvent to all registered listeners.
        Parameters:
        type - the type (null not permitted).
      • addSeries

        public void addSeries​(java.lang.Comparable key,
                              double[] values,
                              int bins)
        Adds a series to the dataset, using the specified number of bins, and sends a DatasetChangeEvent to all registered listeners.
        Parameters:
        key - the series key (null not permitted).
        values - the values (null not permitted).
        bins - the number of bins (must be at least 1).
      • addSeries

        public void addSeries​(java.lang.Comparable key,
                              double[] values,
                              int bins,
                              double minimum,
                              double maximum)
        Adds a series to the dataset. Any data value less than minimum will be assigned to the first bin, and any data value greater than maximum will be assigned to the last bin. Values falling on the boundary of adjacent bins will be assigned to the higher indexed bin.
        Parameters:
        key - the series key (null not permitted).
        values - the raw observations.
        bins - the number of bins (must be at least 1).
        minimum - the lower bound of the bin range.
        maximum - the upper bound of the bin range.
      • getMinimum

        private double getMinimum​(double[] values)
        Returns the minimum value in an array of values.
        Parameters:
        values - the values (null not permitted and zero-length array not permitted).
        Returns:
        The minimum value.
      • getMaximum

        private double getMaximum​(double[] values)
        Returns the maximum value in an array of values.
        Parameters:
        values - the values (null not permitted and zero-length array not permitted).
        Returns:
        The maximum value.
      • getBins

        java.util.List getBins​(int series)
        Returns the bins for a series.
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        Returns:
        A list of bins.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getTotal

        private int getTotal​(int series)
        Returns the total number of observations for a series.
        Parameters:
        series - the series index.
        Returns:
        The total.
      • getBinWidth

        private double getBinWidth​(int series)
        Returns the bin width for a series.
        Parameters:
        series - the series index (zero based).
        Returns:
        The bin width.
      • 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 series key.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getItemCount

        public int getItemCount​(int series)
        Returns the number of data items for a 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.IndexOutOfBoundsException - if series is outside the specified range.
      • getX

        public java.lang.Number getX​(int series,
                                     int item)
        Returns the X value for a bin. This value won't be used for plotting histograms, since the renderer will ignore it. But other renderers can use it (for example, you could use the dataset to create a line chart).
        Specified by:
        getX in interface XYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (zero based).
        Returns:
        The start value.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getY

        public java.lang.Number getY​(int series,
                                     int item)
        Returns the y-value for a bin (calculated to take into account the histogram type).
        Specified by:
        getY in interface XYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (zero based).
        Returns:
        The y-value.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getStartX

        public java.lang.Number getStartX​(int series,
                                          int item)
        Returns the start value for a bin.
        Specified by:
        getStartX in interface IntervalXYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (zero based).
        Returns:
        The start value.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getEndX

        public java.lang.Number getEndX​(int series,
                                        int item)
        Returns the end value for a bin.
        Specified by:
        getEndX in interface IntervalXYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (zero based).
        Returns:
        The end value.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getStartY

        public java.lang.Number getStartY​(int series,
                                          int item)
        Returns the start y-value for a bin (which is the same as the y-value, this method exists only to support the general form of the IntervalXYDataset interface).
        Specified by:
        getStartY in interface IntervalXYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (zero based).
        Returns:
        The y-value.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • getEndY

        public java.lang.Number getEndY​(int series,
                                        int item)
        Returns the end y-value for a bin (which is the same as the y-value, this method exists only to support the general form of the IntervalXYDataset interface).
        Specified by:
        getEndY in interface IntervalXYDataset
        Parameters:
        series - the series index (in the range 0 to getSeriesCount() - 1).
        item - the item index (zero based).
        Returns:
        The Y value.
        Throws:
        java.lang.IndexOutOfBoundsException - if series is outside the specified range.
      • equals

        public boolean equals​(java.lang.Object obj)
        Tests this dataset for equality with an arbitrary object.
        Overrides:
        equals in class AbstractDataset
        Parameters:
        obj - the object to test against (null permitted).
        Returns:
        A boolean.
      • clone

        public java.lang.Object clone()
                               throws java.lang.CloneNotSupportedException
        Returns a clone of the dataset.
        Specified by:
        clone in interface PublicCloneable
        Overrides:
        clone in class AbstractDataset
        Returns:
        A clone of the dataset.
        Throws:
        java.lang.CloneNotSupportedException - if the object cannot be cloned.