umontreal.iro.lecuyer.charts
Class CustomHistogramDataset
- java.lang.Object
-
- org.jfree.data.general.AbstractDataset
-
- org.jfree.data.general.AbstractSeriesDataset
-
- org.jfree.data.xy.AbstractXYDataset
-
- org.jfree.data.xy.AbstractIntervalXYDataset
-
- umontreal.iro.lecuyer.charts.CustomHistogramDataset
-
- 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 CustomHistogramDataset extends AbstractIntervalXYDataset implements IntervalXYDataset, java.lang.Cloneable, org.jfree.util.PublicCloneable
A dataset that can be used for creating histograms. This class is inspired from JFreeChart HistogramDataset class, and provides tools to customize histogram bins.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field and Description HistogramTypetypeThe histogram type.
-
Constructor Summary
Constructors Constructor and Description CustomHistogramDataset()Creates a new (empty) dataset with a default type ofHistogramType.FREQUENCY.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description voidaddSeries(java.lang.Comparable key, double[] values, HistogramBin[] bins)Adds a series to the dataset.voidaddSeries(java.lang.Comparable key, double[] values, int bins)Adds a series to the dataset, using the specified number of bins.voidaddSeries(java.lang.Comparable key, double[] values, int bins, double minimum, double maximum)Adds a series to the dataset.voidaddSeries(java.lang.Comparable key, double[] values, int numPoints, HistogramBin[] bins)Adds a series to the dataset.voidaddSeries(java.lang.Comparable key, double[] values, int numPoints, int bins)Adds a series to the dataset, using the specified number of bins.voidaddSeries(java.lang.Comparable key, double[] values, int numPoints, int bins, double minimum, double maximum)Adds a series to the dataset.java.lang.Objectclone()Returns a clone of the dataset.booleanequals(java.lang.Object obj)Tests this dataset for equality with an arbitrary object.java.util.ListgetBins(int series)Returns the bins for a series.doublegetBinWidth(int series)Returns the bin width for a series.java.lang.NumbergetEndX(int series, int item)Returns the end value for a bin.java.lang.NumbergetEndY(int series, int item)Returns the end y-value for a bin (which is the same as the y-value).intgetItemCount(int series)Returns the number of data items for a series.intgetSeriesCount()Returns the number of series in the dataset.java.lang.ComparablegetSeriesKey(int series)Returns the key for a series.java.lang.NumbergetStartX(int series, int item)Returns the start value for a bin.java.lang.NumbergetStartY(int series, int item)Returns the start y-value for a bin (which is the same as the y-value).intgetTotal(int series)Returns the total number of observations for a series.HistogramTypegetType()Returns the histogram type.double[]getValues(int series)Returns the values for a series.java.util.ListgetValuesList(int series)Returns the values for a series.java.lang.NumbergetX(int series, int item)Returns the X value for a bin.java.lang.NumbergetY(int series, int item)Returns the y-value for a bin (calculated to take into account the histogram type).voidsetBins(int series, HistogramBin[] bins)Sets the bins for a series.voidsetBins(int series, int bins)Sets the bins for a series.voidsetBins(int series, int bins, double minimum, double maximum)Sets the bins for a series.voidsetType(HistogramType type)Sets the histogram type and sends aDatasetChangeEventto all registered listeners.voidsetValues(int series, double[] values)Sets the values for a series.voidsetValues(int series, java.util.List valuesList)Sets the values for a series.-
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, getGroup, getNotify, hasListener, removeChangeListener, setGroup, setNotify, validateObject
-
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jfree.data.xy.IntervalXYDataset
getEndXValue, getEndYValue, getStartXValue, getStartYValue
-
Methods inherited from interface org.jfree.data.xy.XYDataset
getDomainOrder, getXValue, getYValue
-
Methods inherited from interface org.jfree.data.general.SeriesDataset
indexOf
-
Methods inherited from interface org.jfree.data.general.Dataset
addChangeListener, getGroup, removeChangeListener, setGroup
-
-
-
-
Field Detail
-
type
public HistogramType type
The histogram type.
-
-
Constructor Detail
-
CustomHistogramDataset
public CustomHistogramDataset()
Creates a new (empty) dataset with a default type ofHistogramType.FREQUENCY.
-
-
Method Detail
-
getType
public HistogramType getType()
Returns the histogram type.
-
setType
public void setType(HistogramType type)
Sets the histogram type and sends aDatasetChangeEventto all registered listeners.- Parameters:
type- the type (nullnot 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.- Parameters:
key- the series key (nullnot permitted).values- the values (nullnot permitted).bins- the number of bins (must be at least 1).
-
addSeries
public void addSeries(java.lang.Comparable key, double[] values, int numPoints, int bins)Adds a series to the dataset, using the specified number of bins.- Parameters:
key- the series key (nullnot permitted).values- the values (nullnot permitted).numPoints- only the first numPoints values are used.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 (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.
-
addSeries
public void addSeries(java.lang.Comparable key, double[] values, int numPoints, 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. Only the first numPoints values are used.- Parameters:
key- the series key (nullnot permitted).values- the raw observations.numPoints- only the first numPoints values are used.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.
-
addSeries
public void addSeries(java.lang.Comparable key, double[] values, HistogramBin[] bins)Adds a series to the dataset. 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- new bins (size must be at least 1).
-
addSeries
public void addSeries(java.lang.Comparable key, double[] values, int numPoints, HistogramBin[] bins)Adds a series to the dataset. 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.numPoints- only the first numPoints values are used.bins- new bins (size must be at least 1).
-
getBins
public java.util.List getBins(int series)
Returns the bins for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- A list of bins.
- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
setBins
public void setBins(int series, int bins)Sets the bins for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).bins- the number of bins (must be at least 1).- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
setBins
public void setBins(int series, int bins, double minimum, double maximum)Sets the bins for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).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.- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
setBins
public void setBins(int series, HistogramBin[] bins)Sets the bins for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).bins- the number of bins (must be at least 1).- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getValuesList
public java.util.List getValuesList(int series)
Returns the values for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- A list of values.
- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getValues
public double[] getValues(int series)
Returns the values for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).- Returns:
- A table of values.
- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
setValues
public void setValues(int series, java.util.List valuesList)Sets the values for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).valuesList- List of new values.- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
setValues
public void setValues(int series, double[] values)Sets the values for a series.- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).values- Table of new values.- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getTotal
public int getTotal(int series)
Returns the total number of observations for a series.- Parameters:
series- the series index.- Returns:
- The total.
-
getBinWidth
public 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
public java.lang.Comparable getSeriesKey(int series)
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:
java.lang.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:
java.lang.IndexOutOfBoundsException- ifseriesis 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:
getStartXin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The start value.
- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
getEndX
public java.lang.Number getEndX(int series, int item)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:
java.lang.IndexOutOfBoundsException- ifseriesis 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:
getStartYin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The y-value.
- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis 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:
getEndYin interfaceIntervalXYDataset- Parameters:
series- the series index (in the range0togetSeriesCount() - 1).item- the item index (zero based).- Returns:
- The Y value.
- Throws:
java.lang.IndexOutOfBoundsException- ifseriesis outside the specified range.
-
equals
public boolean equals(java.lang.Object obj)
Tests this dataset for equality with an arbitrary object.- Overrides:
equalsin classjava.lang.Object- Parameters:
obj- the object to test against (nullpermitted).- Returns:
- A boolean.
-
clone
public java.lang.Object clone() throws java.lang.CloneNotSupportedExceptionReturns a clone of the dataset.- Specified by:
clonein interfaceorg.jfree.util.PublicCloneable- Overrides:
clonein classAbstractDataset- Returns:
- A clone of the dataset.
- Throws:
java.lang.CloneNotSupportedException- if the object cannot be cloned.
-
-
DMelt 3.0 © DataMelt by jWork.ORG