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:
ObjectInputValidation,Serializable,Cloneable,EventListener,PublicCloneable,Dataset,SeriesChangeListener,SeriesDataset,IntervalXYDataset,XYDataset
public class HistogramDataset
extends AbstractIntervalXYDataset
implements IntervalXYDataset, Cloneable, PublicCloneable, Serializable
A dataset that can be used for creating histograms.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ListA list of maps.private static final longFor serialization.private HistogramTypeThe histogram type. -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new (empty) dataset with a default type ofHistogramType.FREQUENCY. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddSeries(Comparable key, double[] values, int bins) Adds a series to the dataset, using the specified number of bins, and sends aDatasetChangeEventto all registered listeners.voidaddSeries(Comparable key, double[] values, int bins, double minimum, double maximum) Adds a series to the dataset.clone()Returns a clone of the dataset.booleanTests this dataset for equality with an arbitrary object.(package private) ListgetBins(int series) Returns the bins for a series.private doublegetBinWidth(int series) Returns the bin width for a series.getEndX(int series, int item) Returns the end value for a bin.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 theIntervalXYDatasetinterface).intgetItemCount(int series) Returns the number of data items for a series.private doublegetMaximum(double[] values) Returns the maximum value in an array of values.private doublegetMinimum(double[] values) Returns the minimum value in an array of values.intReturns the number of series in the dataset.getSeriesKey(int series) Returns the key for a series.getStartX(int series, int item) Returns the start value for a bin.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 theIntervalXYDatasetinterface).private intgetTotal(int series) Returns the total number of observations for a series.getType()Returns the histogram type.getX(int series, int item) Returns the X value for a bin.getY(int series, int item) Returns the y-value for a bin (calculated to take into account the histogram type).voidsetType(HistogramType type) Sets the histogram type and sends aDatasetChangeEventto all registered listeners.Methods inherited from class org.jfree.data.xy.AbstractIntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValueMethods inherited from class org.jfree.data.xy.AbstractXYDataset
getDomainOrder, getXValue, getYValueMethods inherited from class org.jfree.data.general.AbstractSeriesDataset
indexOf, seriesChangedMethods inherited from class org.jfree.data.general.AbstractDataset
addChangeListener, canEqual, fireDatasetChanged, getGroup, getNotify, hashCode, hasListener, notifyListeners, removeChangeListener, setGroup, setNotify, validateObjectMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.jfree.data.general.Dataset
addChangeListener, getGroup, removeChangeListener, setGroupMethods inherited from interface org.jfree.data.xy.IntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValueMethods inherited from interface org.jfree.data.general.SeriesDataset
indexOfMethods inherited from interface org.jfree.data.xy.XYDataset
getDomainOrder, getXValue, getYValue
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDFor serialization.- See Also:
-
list
A list of maps. -
type
The histogram type.
-
-
Constructor Details
-
HistogramDataset
public HistogramDataset()Creates a new (empty) dataset with a default type ofHistogramType.FREQUENCY.
-
-
Method Details
-
getType
Returns the histogram type.- Returns:
- The type (never
null).
-
setType
Sets the histogram type and sends aDatasetChangeEventto all registered listeners.- Parameters:
type- the type (nullnot permitted).
-
addSeries
Adds a series to the dataset, using the specified number of bins, and sends aDatasetChangeEventto all registered listeners.- Parameters:
key- the series key (nullnot permitted).values- the values (nullnot permitted).bins- the number of bins (must be at least 1).
-
addSeries
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 (nullnot 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 (nullnot 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 (nullnot permitted and zero-length array not permitted).- Returns:
- The maximum value.
-
getBins
Returns the bins for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- A list of bins.
- Throws:
IndexOutOfBoundsException- ifseriesis 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.
-
getSeriesCount
public int getSeriesCount()Returns the number of series in the dataset.- Specified by:
getSeriesCountin interfaceSeriesDataset- Specified by:
getSeriesCountin classAbstractSeriesDataset- Returns:
- The series count.
-
getSeriesKey
Returns the key for a series.- Specified by:
getSeriesKeyin interfaceSeriesDataset- Specified by:
getSeriesKeyin classAbstractSeriesDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- The series key.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getItemCount
public int getItemCount(int series) Returns the number of data items for a series.- Specified by:
getItemCountin interfaceXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- The item count.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getX
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:
getXin interfaceXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The start value.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getY
Returns the y-value for a bin (calculated to take into account the histogram type).- Specified by:
getYin interfaceXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The y-value.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getStartX
Returns the start value for a bin.- Specified by:
getStartXin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The start value.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getEndX
Returns the end value for a bin.- Specified by:
getEndXin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The end value.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getStartY
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 theIntervalXYDatasetinterface).- Specified by:
getStartYin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The y-value.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getEndY
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 theIntervalXYDatasetinterface).- Specified by:
getEndYin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The Y value.
- Throws:
IndexOutOfBoundsException- ifseriesis outside the specified range.
-
equals
Tests this dataset for equality with an arbitrary object.- Overrides:
equalsin classAbstractDataset- Parameters:
obj- the object to test against (nullpermitted).- Returns:
- A boolean.
-
clone
Returns a clone of the dataset.- Specified by:
clonein interfacePublicCloneable- Overrides:
clonein classAbstractDataset- Returns:
- A clone of the dataset.
- Throws:
CloneNotSupportedException- if the object cannot be cloned.
-