Class ArrayHistogramRanges

  • All Implemented Interfaces:
    AdditionalInformationHandler, ArrayProvider, CleanUpHandler, Destroyable, GlobalInfoSupporter, LoggingLevelHandler, LoggingSupporter, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<Actor>, SizeOfHandler, Stoppable, StoppableWithFeedback, VariablesInspectionHandler, VariableChangeListener, Actor, ArrayProvider, ErrorHandler, InputConsumer, OutputProducer, Serializable, Comparable

    public class ArrayHistogramRanges
    extends AbstractArrayProvider
    Outputs the ranges generated by adams.data.statistics.ArrayHistogram using the incoming double array or matrix.
    In case of an array, the data-type and location are ignored.

    Input/output:
    - accepts:
       java.lang.Double[]
       java.lang.Double[][]
    - generates:
       java.lang.String


    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -name <java.lang.String> (property: name)
        The name of the actor.
        default: ArrayHistogramRanges
     
    -annotation <adams.core.base.BaseAnnotation> (property: annotations)
        The annotations to attach to this actor.
        default: 
     
    -skip <boolean> (property: skip)
        If set to true, transformation is skipped and the input token is just forwarded 
        as it is.
        default: false
     
    -stop-flow-on-error <boolean> (property: stopFlowOnError)
        If set to true, the flow execution at this level gets stopped in case this 
        actor encounters an error; the error gets propagated; useful for critical 
        actors.
        default: false
     
    -silent <boolean> (property: silent)
        If enabled, then no errors are output in the console; Note: the enclosing 
        actor handler must have this enabled as well.
        default: false
     
    -output-array <boolean> (property: outputArray)
        If enabled, the ranges are output as array rather than one by one.
        default: false
     
    -type <ROW_BY_INDEX|COLUMN_BY_INDEX> (property: dataType)
        In case of a double matrix, whether to retrieve rows or columns; ignored 
        in case of simple double arrays.
        default: COLUMN_BY_INDEX
     
    -location <adams.core.base.BaseString> [-location ...] (property: locations)
        The locations of the data; An index is a number starting with 1; the following 
        placeholders can be used as well: first, second, third, last_2, last_1, 
        last
        default: 
     
    -bin-calc <MANUAL|FREQUENCY|DENSITY|STURGES|SCOTT|SQRT> (property: binCalculation)
        Defines how the number of bins are calculated.
        default: MANUAL
     
    -num-bins <int> (property: numBins)
        The number of bins to use in case of manual bin calculation.
        default: 50
        minimum: 1
     
    -bin-width <double> (property: binWidth)
        The bin width to use for some of the calculations.
        default: 1.0
        minimum: 1.0E-5
     
    -normalize <boolean> (property: normalize)
        If set to true the data gets normalized first before the histogram is calculated.
        default: false
     
    -use-fixed-min-max <boolean> (property: useFixedMinMax)
        If enabled, then the user-specified min/max values are used for the bin 
        calculation rather than the min/max from the data (allows comparison of 
        histograms when generating histograms over a range of arrays).
        default: false
     
    -manual-min <double> (property: manualMin)
        The minimum to use when using manual binning with user-supplied min/max 
        enabled.
        default: 0.0
     
    -manual-max <double> (property: manualMax)
        The maximum to use when using manual binning with user-supplied max/max 
        enabled.
        default: 1.0
     
    -num-decimals <int> (property: numDecimals)
        The number of decimals to show in the bin descriptions.
        default: 3
        minimum: 0
     
    Version:
    $Revision$
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_DataType

        protected ArrayStatisticDataType m_DataType
        the type of data to get from the double matrix (rows or columns).
      • m_Locations

        protected BaseString[] m_Locations
        the array of indices expressions.
      • m_NumBins

        protected int m_NumBins
        the number of bins in case of manual bin calculation.
      • m_BinWidth

        protected double m_BinWidth
        the bin width - used for some calculations.
      • m_Normalize

        protected boolean m_Normalize
        whether to normalize the data.
      • m_UseFixedMinMax

        protected boolean m_UseFixedMinMax
        whether to use fixed min/max for manual bin calculation.
      • m_ManualMin

        protected double m_ManualMin
        the manual minimum.
      • m_ManualMax

        protected double m_ManualMax
        the manual maximum.
      • m_NumDecimals

        protected int m_NumDecimals
        the number of decimals to show.
    • Constructor Detail

      • ArrayHistogramRanges

        public ArrayHistogramRanges()
    • Method Detail

      • setDataType

        public void setDataType​(ArrayStatisticDataType value)
        Sets what type of data to retrieve from the Instances object.
        Parameters:
        value - the type of conversion
      • getDataType

        public ArrayStatisticDataType getDataType()
        Returns what type of data to retrieve from the Instances object.
        Returns:
        the type of conversion
      • dataTypeTipText

        public String dataTypeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setLocations

        public void setLocations​(BaseString[] value)
        Sets the locations of the data (indices/regular expressions on attribute name).
        Parameters:
        value - the locations of the data
      • getLocations

        public BaseString[] getLocations()
        Returns the locations of the data (indices/regular expressions on attribute name).
        Returns:
        the locations of the data
      • locationsTipText

        public String locationsTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setBinCalculation

        public void setBinCalculation​(ArrayHistogram.BinCalculation value)
        Sets how the number of bins is calculated.
        Parameters:
        value - the bin calculation
      • getBinCalculation

        public ArrayHistogram.BinCalculation getBinCalculation()
        Returns how the number of bins is calculated.
        Returns:
        the bin calculation
      • binCalculationTipText

        public String binCalculationTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setNumBins

        public void setNumBins​(int value)
        Sets the number of bins to use in manual calculation.
        Parameters:
        value - the number of bins
      • getNumBins

        public int getNumBins()
        Returns the number of bins to use in manual calculation.
        Returns:
        the number of bins
      • numBinsTipText

        public String numBinsTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setBinWidth

        public void setBinWidth​(double value)
        Sets the bin width to use (for some calculations).
        Parameters:
        value - the bin width
      • getBinWidth

        public double getBinWidth()
        Returns the bin width in use (for some calculations).
        Returns:
        the bin width
      • binWidthTipText

        public String binWidthTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setNormalize

        public void setNormalize​(boolean value)
        Sets whether to normalize the data before generating the histogram.
        Parameters:
        value - if true the data gets normalized first
      • getNormalize

        public boolean getNormalize()
        Returns whether to normalize the data before generating the histogram.
        Returns:
        true if the data gets normalized first
      • normalizeTipText

        public String normalizeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setUseFixedMinMax

        public void setUseFixedMinMax​(boolean value)
        Sets whether to use user-supplied min/max for bin calculation rather than obtain min/max from data.
        Parameters:
        value - true if to use user-supplied min/max
      • getUseFixedMinMax

        public boolean getUseFixedMinMax()
        Returns whether to use user-supplied min/max for bin calculation rather than obtain min/max from data.
        Returns:
        true if to use user-supplied min/max
      • useFixedMinMaxTipText

        public String useFixedMinMaxTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setManualMin

        public void setManualMin​(double value)
        Sets the minimum to use when using manual binning with user-supplied min/max enabled.
        Parameters:
        value - the minimum
      • getManualMin

        public double getManualMin()
        Returns the minimum to use when using manual binning with user-supplied min/max enabled.
        Returns:
        the minimum
      • manualMinTipText

        public String manualMinTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setManualMax

        public void setManualMax​(double value)
        Sets the maximum to use when using manual binning with user-supplied max/max enabled.
        Parameters:
        value - the maximum
      • getManualMax

        public double getManualMax()
        Returns the maximum to use when using manual binning with user-supplied max/max enabled.
        Returns:
        the maximum
      • manualMaxTipText

        public String manualMaxTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setNumDecimals

        public void setNumDecimals​(int value)
        Sets the number of decimals to show in the bin description.
        Parameters:
        value - the number of decimals
      • getNumDecimals

        public int getNumDecimals()
        Returns the number of decimals to show in the bin description.
        Returns:
        the number of decimals
      • numDecimalsTipText

        public String numDecimalsTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • accepts

        public Class[] accepts()
        Returns the class that the consumer accepts.
        Returns:
        java.lang.Double[].class, java.lang.Double[][].class
      • doExecute

        protected String doExecute()
        Executes the flow item.
        Specified by:
        doExecute in class AbstractActor
        Returns:
        null if everything is fine, otherwise error message