adams.flow.transformer
Class SpreadSheetPlotGenerator

java.lang.Object
  extended by adams.core.ConsoleObject
      extended by adams.core.option.AbstractOptionHandler
          extended by adams.flow.core.AbstractActor
              extended by adams.flow.transformer.AbstractTransformer
                  extended by adams.flow.transformer.SpreadSheetPlotGenerator
All Implemented Interfaces:
AdditionalInformationHandler, CleanUpHandler, Debuggable, DebugOutputHandler, Destroyable, OptionHandler, QuickInfoSupporter, ShallowCopySupporter<AbstractActor>, SizeOfHandler, Stoppable, VariableChangeListener, Actor, ErrorHandler, InputConsumer, OutputProducer, Serializable, Comparable

public class SpreadSheetPlotGenerator
extends AbstractTransformer

Outputs plot containers generated from a spreadsheet.

Input/output:
- accepts:
   adams.data.spreadsheet.SpreadSheet
- generates:
   adams.flow.container.SequencePlotterContainer

Container information:
- adams.flow.container.SequencePlotterContainer: PlotName, X, Y, IsMarker

Valid options are:

-D <int> (property: debugLevel)
    The greater the number the more additional info the scheme may output to 
    the console (0 = off).
    default: 0
    minimum: 0
 
-name <java.lang.String> (property: name)
    The name of the actor.
    default: SpreadSheetPlotGenerator
 
-annotation <adams.core.base.BaseText> (property: annotations)
    The annotations to attach to this actor.
    default: 
 
-skip (property: skip)
    If set to true, transformation is skipped and the input token is just forwarded 
    as it is.
 
-stop-flow-on-error (property: stopFlowOnError)
    If set to true, the flow gets stopped in case this actor encounters an error;
     useful for critical actors.
 
-columns <java.lang.String> (property: plotColumns)
    The range of columns to include in the plot; A range is a comma-separated 
    list of single 1-based indices or sub-ranges of indices ('start-end'); '
    inv(...)' inverts the range '...'; the following placeholders can be used 
    as well: first, second, third, last_2, last_1, last
    default: 
 
-x-column <java.lang.String> (property: XColumn)
    The (optional) index of the column which values to use as X values in the 
    plot; 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: 
 
-default-cell-value <double> (property: defaultCellValue)
    The default value for missing or non-numeric cells.
    default: -1.0
 
-prefix-columns <adams.core.Range> (property: prefixColumns)
    The range of columns to prefix the plot name with; A range is a comma-separated 
    list of single 1-based indices or sub-ranges of indices ('start-end'); '
    inv(...)' inverts the range '...'; the following placeholders can be used 
    as well: first, second, third, last_2, last_1, last
    default: 
 

Version:
$Revision: 6084 $
Author:
fracpete (fracpete at waikato dot ac dot nz)
See Also:
Serialized Form

Field Summary
protected  Vector<SequencePlotterContainer> m_Containers
          the generated plot containers.
protected  double m_DefaultCellValue
          the default value for missing or non-numeric cells.
protected  Range m_PlotColumns
          the columns to plot.
protected  Range m_PrefixColumns
          the columns to prefix the plot name with.
protected  Index m_XColumn
          the (optional) column to use as X value.
static String MISSING_CELL_VALUE
          the default string value for cells that are missing.
 
Fields inherited from class adams.flow.transformer.AbstractTransformer
BACKUP_INPUT, BACKUP_OUTPUT, m_InputToken, m_OutputToken
 
Fields inherited from class adams.flow.core.AbstractActor
m_Annotations, m_BackupState, m_DetectedObjectVariables, m_DetectedVariables, m_ErrorHandler, m_Executed, m_Executing, m_FullName, m_Headless, m_Name, m_Parent, m_Root, m_Self, m_Skip, m_StopFlowOnError, m_StopMessage, m_Stopped, m_StorageHandler, m_VariablesUpdated
 
Fields inherited from class adams.core.option.AbstractOptionHandler
m_DebugLevel, m_OptionManager
 
Fields inherited from interface adams.flow.core.Actor
FILE_EXTENSION, FILE_EXTENSION_GZ
 
Constructor Summary
SpreadSheetPlotGenerator()
           
 
Method Summary
 Class[] accepts()
          Returns the class that the consumer accepts.
 String defaultCellValueTipText()
          Returns the tip text for this property.
 void defineOptions()
          Adds options to the internal list of options.
protected  String doExecute()
          Executes the flow item.
 Class[] generates()
          Returns the class of objects that it generates.
protected  String getCellString(Row row, int index)
          Returns the string value for the specified cell.
protected  double getCellValue(Row row, int index)
          Returns the cell value for the specified column index.
 double getDefaultCellValue()
          Returns the default value for missing or non-numeric cells.
 String getPlotColumns()
          Returns the current column range to use in the plot.
 Range getPrefixColumns()
          Returns the current column range to generate the prefix of the plot with.
 String getQuickInfo()
          Returns a quick info about the actor, which will be displayed in the GUI.
 String getXColumn()
          Returns the index of the column which values to use as X values.
 String globalInfo()
          Returns a string describing the object.
 boolean hasPendingOutput()
          Checks whether there is pending output to be collected after executing the flow item.
protected  void initialize()
          Initializes the members.
 Token output()
          Returns the generated token.
 String plotColumnsTipText()
          Returns the tip text for this property.
 String prefixColumnsTipText()
          Returns the tip text for this property.
 void setDefaultCellValue(double value)
          Sets the default value for missing or non-numeric cells.
 void setPlotColumns(String value)
          Sets the column range to use in the plot.
 void setPrefixColumns(Range value)
          Sets the column range to generate the prefix of the plot with.
 void setXColumn(String value)
          Sets the index of the column which values to use as X values.
 String XColumnTipText()
          Returns the tip text for this property.
 
Methods inherited from class adams.flow.transformer.AbstractTransformer
backupState, execute, input, postExecute, reset, restoreState, wrapUp
 
Methods inherited from class adams.flow.core.AbstractActor
annotationsTipText, canInspectOptions, canPerformSetUpCheck, cleanUp, compareTo, debug, destroy, equals, findVariables, findVariables, findVariables, forceVariables, forCommandLine, forName, getAdditionalInformation, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFlowActors, getFullName, getName, getNextSibling, getParent, getPreviousSibling, getRoot, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, handleException, hasErrorHandler, hasStopMessage, index, isBackedUp, isExecuted, isExecuting, isFinished, isHeadless, isStopped, nameTipText, performSetUpChecks, preExecute, pruneBackup, pruneBackup, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setUp, setVariables, shallowCopy, shallowCopy, sizeOf, skipTipText, stopExecution, stopExecution, stopFlowOnErrorTipText, updateDetectedVariables, updatePrefix, updateVariables, variableChanged
 
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, debug, debugLevelTipText, finishInit, getDebugLevel, getOptionManager, isDebugOn, newOptionManager, setDebugLevel, toCommandLine, toString
 
Methods inherited from class adams.core.ConsoleObject
getDebugging, getSystemErr, getSystemOut
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface adams.flow.core.Actor
cleanUp, compareTo, debug, destroy, equals, findVariables, getAnnotations, getDefaultName, getDetectedVariables, getErrorHandler, getFullName, getName, getNextSibling, getParent, getPreviousSibling, getRoot, getSkip, getStopFlowOnError, getStopMessage, getStorageHandler, getVariables, handleError, hasErrorHandler, hasStopMessage, index, isExecuted, isFinished, isHeadless, isStopped, setAnnotations, setErrorHandler, setHeadless, setName, setParent, setSkip, setStopFlowOnError, setUp, setVariables, sizeOf, stopExecution, stopExecution, variableChanged
 
Methods inherited from interface adams.core.AdditionalInformationHandler
getAdditionalInformation
 
Methods inherited from interface adams.core.option.OptionHandler
cleanUpOptions, getOptionManager
 

Field Detail

MISSING_CELL_VALUE

public static final String MISSING_CELL_VALUE
the default string value for cells that are missing.

See Also:
Constant Field Values

m_PlotColumns

protected Range m_PlotColumns
the columns to plot.


m_XColumn

protected Index m_XColumn
the (optional) column to use as X value.


m_DefaultCellValue

protected double m_DefaultCellValue
the default value for missing or non-numeric cells.


m_PrefixColumns

protected Range m_PrefixColumns
the columns to prefix the plot name with.


m_Containers

protected Vector<SequencePlotterContainer> m_Containers
the generated plot containers.

Constructor Detail

SpreadSheetPlotGenerator

public SpreadSheetPlotGenerator()
Method Detail

globalInfo

public String globalInfo()
Returns a string describing the object.

Specified by:
globalInfo in class AbstractOptionHandler
Returns:
a description suitable for displaying in the gui

defineOptions

public void defineOptions()
Adds options to the internal list of options.

Specified by:
defineOptions in interface OptionHandler
Overrides:
defineOptions in class AbstractActor

initialize

protected void initialize()
Initializes the members.

Overrides:
initialize in class AbstractActor

getQuickInfo

public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.

Specified by:
getQuickInfo in interface QuickInfoSupporter
Specified by:
getQuickInfo in interface Actor
Overrides:
getQuickInfo in class AbstractActor
Returns:
null if no info available, otherwise short string

setPlotColumns

public void setPlotColumns(String value)
Sets the column range to use in the plot.

Parameters:
value - the column range

getPlotColumns

public String getPlotColumns()
Returns the current column range to use in the plot.

Returns:
the column range

plotColumnsTipText

public String plotColumnsTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the GUI or for listing the options.

setXColumn

public void setXColumn(String value)
Sets the index of the column which values to use as X values.

Parameters:
value - the column index

getXColumn

public String getXColumn()
Returns the index of the column which values to use as X values.

Returns:
the column index

XColumnTipText

public String XColumnTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the GUI or for listing the options.

setDefaultCellValue

public void setDefaultCellValue(double value)
Sets the default value for missing or non-numeric cells.

Parameters:
value - the default value

getDefaultCellValue

public double getDefaultCellValue()
Returns the default value for missing or non-numeric cells.

Returns:
the default value

defaultCellValueTipText

public String defaultCellValueTipText()
Returns the tip text for this property.

Returns:
tip text for this property suitable for displaying in the GUI or for listing the options.

setPrefixColumns

public void setPrefixColumns(Range value)
Sets the column range to generate the prefix of the plot with.

Parameters:
value - the column range

getPrefixColumns

public Range getPrefixColumns()
Returns the current column range to generate the prefix of the plot with.

Returns:
the column range

prefixColumnsTipText

public String prefixColumnsTipText()
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:
adams.data.spreadsheet.SpreadSheet.class

getCellString

protected String getCellString(Row row,
                               int index)
Returns the string value for the specified cell.

Parameters:
row - the row to get the cell from
index - the column index
Returns:
the string value

getCellValue

protected double getCellValue(Row row,
                              int index)
Returns the cell value for the specified column index. Uses the default value if the cell is missing or non-numeric.

Parameters:
row - the row to get the cell from
index - the column index
Returns:
the cell value
See Also:
m_DefaultCellValue

doExecute

protected String doExecute()
Executes the flow item.

Specified by:
doExecute in class AbstractActor
Returns:
null if everything is fine, otherwise error message

generates

public Class[] generates()
Returns the class of objects that it generates.

Returns:
adams.flow.container.SequencePlotterContainer.class

hasPendingOutput

public boolean hasPendingOutput()
Checks whether there is pending output to be collected after executing the flow item.

Specified by:
hasPendingOutput in interface OutputProducer
Overrides:
hasPendingOutput in class AbstractTransformer
Returns:
true if there is pending output

output

public Token output()
Returns the generated token.

Specified by:
output in interface OutputProducer
Overrides:
output in class AbstractTransformer
Returns:
the generated token


Copyright © 2012 University of Waikato, Hamilton, NZ. All Rights Reserved.