Package org.jfree.data.statistics
Class HistogramDataset
- java.lang.Object
-
- org.jfree.data.general.AbstractDataset
-
- org.jfree.data.general.AbstractSeriesDataset
-
- org.jfree.data.xy.AbstractXYDataset
-
- org.jfree.data.xy.AbstractIntervalXYDataset
-
- org.jfree.data.statistics.HistogramDataset
-
- All Implemented Interfaces:
java.io.ObjectInputValidation
,java.io.Serializable
,java.lang.Cloneable
,java.util.EventListener
,Dataset
,SeriesChangeListener
,SeriesDataset
,IntervalXYDataset
,XYDataset
,org.jfree.util.PublicCloneable
public class HistogramDataset extends AbstractIntervalXYDataset implements IntervalXYDataset, java.lang.Cloneable, org.jfree.util.PublicCloneable, java.io.Serializable
A dataset that can be used for creating histograms.- See Also:
SimpleHistogramDataset
, Serialized Form
-
-
Constructor Summary
Constructors Constructor Description HistogramDataset()
Creates a new (empty) dataset with a default type ofHistogramType
.FREQUENCY.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addSeries(java.lang.Comparable key, double[] values, int bins)
Adds a series to the dataset, using the specified number of bins, and sends aDatasetChangeEvent
to all registered listeners.void
addSeries(java.lang.Comparable key, double[] values, int bins, double minimum, double maximum)
Adds a series to the dataset.java.lang.Object
clone()
Returns a clone of the dataset.boolean
equals(java.lang.Object obj)
Tests this dataset for equality with an arbitrary object.java.lang.Number
getEndX(int series, int item)
Returns the end value for a bin.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 theIntervalXYDataset
interface).int
getItemCount(int series)
Returns the number of data items for a series.int
getSeriesCount()
Returns the number of series in the dataset.java.lang.Comparable
getSeriesKey(int series)
Returns the key for a series.java.lang.Number
getStartX(int series, int item)
Returns the start value for a bin.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 theIntervalXYDataset
interface).HistogramType
getType()
Returns the histogram type.java.lang.Number
getX(int series, int item)
Returns the X value for a bin.java.lang.Number
getY(int series, int item)
Returns the y-value for a bin (calculated to take into account the histogram type).void
setType(HistogramType type)
Sets the histogram type and sends aDatasetChangeEvent
to all registered listeners.-
Methods inherited from class org.jfree.data.xy.AbstractIntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValue
-
Methods inherited from class org.jfree.data.xy.AbstractXYDataset
getDomainOrder, getXValue, getYValue
-
Methods inherited from class org.jfree.data.general.AbstractSeriesDataset
indexOf, seriesChanged
-
Methods inherited from class org.jfree.data.general.AbstractDataset
addChangeListener, fireDatasetChanged, getGroup, getNotify, hasListener, notifyListeners, removeChangeListener, setGroup, setNotify, validateObject
-
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jfree.data.general.Dataset
addChangeListener, getGroup, removeChangeListener, setGroup
-
Methods inherited from interface org.jfree.data.xy.IntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValue
-
Methods inherited from interface org.jfree.data.general.SeriesDataset
indexOf
-
Methods inherited from interface org.jfree.data.xy.XYDataset
getDomainOrder, getXValue, getYValue
-
-
-
-
Constructor Detail
-
HistogramDataset
public HistogramDataset()
Creates a new (empty) dataset with a default type ofHistogramType
.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 aDatasetChangeEvent
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 aDatasetChangeEvent
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.
-
getSeriesCount
public int getSeriesCount()
Returns the number of series in the dataset.- Specified by:
getSeriesCount
in interfaceSeriesDataset
- Specified by:
getSeriesCount
in classAbstractSeriesDataset
- Returns:
- The series count.
-
getSeriesKey
public java.lang.Comparable getSeriesKey(int series)
Returns the key for a series.- Specified by:
getSeriesKey
in interfaceSeriesDataset
- Specified by:
getSeriesKey
in classAbstractSeriesDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).- Returns:
- The series key.
- Throws:
java.lang.IndexOutOfBoundsException
- ifseries
is outside the specified range.
-
getItemCount
public int getItemCount(int series)
Returns the number of data items for a series.- Specified by:
getItemCount
in interfaceXYDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).- Returns:
- The item count.
- Throws:
java.lang.IndexOutOfBoundsException
- ifseries
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).
-
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).
-
getStartX
public java.lang.Number getStartX(int series, int item)
Returns the start value for a bin.- Specified by:
getStartX
in interfaceIntervalXYDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).item
- the item index (zero based).- Returns:
- The start value.
- Throws:
java.lang.IndexOutOfBoundsException
- ifseries
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 interfaceIntervalXYDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).item
- the item index (zero based).- Returns:
- The end value.
- Throws:
java.lang.IndexOutOfBoundsException
- ifseries
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 theIntervalXYDataset
interface).- Specified by:
getStartY
in interfaceIntervalXYDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).item
- the item index (zero based).- Returns:
- The y-value.
- Throws:
java.lang.IndexOutOfBoundsException
- ifseries
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 theIntervalXYDataset
interface).- Specified by:
getEndY
in interfaceIntervalXYDataset
- Parameters:
series
- the series index (in the range0
togetSeriesCount() - 1
).item
- the item index (zero based).- Returns:
- The Y value.
- Throws:
java.lang.IndexOutOfBoundsException
- ifseries
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 classjava.lang.Object
- 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 interfaceorg.jfree.util.PublicCloneable
- Overrides:
clone
in classAbstractDataset
- Returns:
- A clone of the dataset.
- Throws:
java.lang.CloneNotSupportedException
- if the object cannot be cloned.
-
-