Package weka.knowledgeflow.steps
Class ModelPerformanceChart
java.lang.Object
weka.knowledgeflow.steps.BaseStep
weka.knowledgeflow.steps.ModelPerformanceChart
- All Implemented Interfaces:
Serializable
,BaseStepExtender
,DataCollector
,Step
@KFStep(name="ModelPerformanceChart",
category="Visualization",
toolTipText="Visualize performance charts (such as ROC).",
iconPath="weka/gui/knowledgeflow/icons/ModelPerformanceChart.gif")
public class ModelPerformanceChart
extends BaseStep
implements DataCollector
A Step that collects and displays either classifier error plots or threshold
curves
- Version:
- $Revision: $
- Author:
- Mark Hall (mhall{[at]}pentaho{[dot]}com)
- See Also:
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Clear all plot data (both onscreen and offscreen)Return the fully qualified name of a custom editor component (JComponent) to use for editing the properties of the step.Get a list of incoming connection types that this step can accept.When running in a graphical execution environment a step can make one or more popup Viewer components available.Get the additional options for the offscreen rendererGet the height (in pixels) of the offscreen image to generateGet the name of the renderer to use for offscreen chart rendering operationsGet the width (in pixels) of the offscreen image to generate.Get the name of the attribute for the x-axis in offscreen plotsGet the name of the attribute for the y-axix of offscreen plots.Get a list of outgoing connection types that this step can produce.getPlots()
Get the plots currently stored in this stepboolean
Returns true if the plots being stored are threshold plotsvoid
processIncoming
(Data data) Process incoming datavoid
restoreData
(Object data) Restore the data (plots) for this stepRetrieve the data (plots) stored in this stepvoid
setOffscreenAdditionalOpts
(String additional) Set the additional options for the offscreen renderervoid
setOffscreenHeight
(String height) Set the height (in pixels) of the offscreen image to generatevoid
setOffscreenRendererName
(String rendererName) Set the name of the renderer to use for offscreen chart rendering operationsvoid
setOffscreenWidth
(String width) Set the width (in pixels) of the offscreen image to generate.void
setOffscreenXAxis
(String xAxis) Set the name of the attribute for the x-axis in offscreen plots.void
setOffscreenYAxis
(String yAxis) Set the name of the attribute for the y-axis in offscreen plots.void
stepInit()
Initialize the stepMethods inherited from class weka.knowledgeflow.steps.BaseStep
environmentSubstitute, getDefaultSettings, getInteractiveViewersImpls, getName, getStepManager, globalInfo, isResourceIntensive, isStopRequested, outputStructureForConnectionType, outputStructureForConnectionType, setName, setStepIsResourceIntensive, setStepManager, setStepMustRunSingleThreaded, start, stepMustRunSingleThreaded, stop
-
Constructor Details
-
ModelPerformanceChart
public ModelPerformanceChart()
-
-
Method Details
-
setOffscreenXAxis
@OptionMetadata(displayName="X-axis attribute", description="Attribute name or /first, /last or /<index>", displayOrder=1) public void setOffscreenXAxis(String xAxis) Set the name of the attribute for the x-axis in offscreen plots. This defaults to "False Positive Rate" for threshold curves if not specified.- Parameters:
xAxis
- the name of the xAxis
-
getOffscreenXAxis
Get the name of the attribute for the x-axis in offscreen plots- Returns:
- the name of the xAxis
-
setOffscreenYAxis
@OptionMetadata(displayName="Y-axis attribute", description="Attribute name or /first, /last or /<index>", displayOrder=2) public void setOffscreenYAxis(String yAxis) Set the name of the attribute for the y-axis in offscreen plots. This defaults to "True Positive Rate" for threshold curves if not specified.- Parameters:
yAxis
- the name of the xAxis
-
getOffscreenYAxis
Get the name of the attribute for the y-axix of offscreen plots.- Returns:
- the name of the yAxis.
-
setOffscreenWidth
@OptionMetadata(displayName="Chart width (pixels)", description="Width of the rendered chart", displayOrder=3) public void setOffscreenWidth(String width) Set the width (in pixels) of the offscreen image to generate.- Parameters:
width
- the width in pixels.
-
getOffscreenWidth
Get the width (in pixels) of the offscreen image to generate.- Returns:
- the width in pixels.
-
setOffscreenHeight
@OptionMetadata(displayName="Chart height (pixels)", description="Height of the rendered chart", displayOrder=4) public void setOffscreenHeight(String height) Set the height (in pixels) of the offscreen image to generate- Parameters:
height
- the height in pixels
-
getOffscreenHeight
Get the height (in pixels) of the offscreen image to generate- Returns:
- the height in pixels
-
setOffscreenRendererName
Set the name of the renderer to use for offscreen chart rendering operations- Parameters:
rendererName
- the name of the renderer to use
-
getOffscreenRendererName
Get the name of the renderer to use for offscreen chart rendering operations- Returns:
- the name of the renderer to use
-
setOffscreenAdditionalOpts
Set the additional options for the offscreen renderer- Parameters:
additional
- additional options
-
getOffscreenAdditionalOpts
Get the additional options for the offscreen renderer- Returns:
- the additional options
-
getIncomingConnectionTypes
Get a list of incoming connection types that this step can accept. Ideally (and if appropriate), this should take into account the state of the step and any existing incoming connections. E.g. a step might be able to accept one (and only one) incoming batch data connection.- Specified by:
getIncomingConnectionTypes
in interfaceBaseStepExtender
- Specified by:
getIncomingConnectionTypes
in interfaceStep
- Returns:
- a list of incoming connections that this step can accept given its current state
-
getOutgoingConnectionTypes
Get a list of outgoing connection types that this step can produce. Ideally (and if appropriate), this should take into account the state of the step and the incoming connections. E.g. depending on what incoming connection is present, a step might be able to produce a trainingSet output, a testSet output or neither, but not both.- Specified by:
getOutgoingConnectionTypes
in interfaceBaseStepExtender
- Specified by:
getOutgoingConnectionTypes
in interfaceStep
- Returns:
- a list of outgoing connections that this step can produce
-
processIncoming
Process incoming data- Specified by:
processIncoming
in interfaceBaseStepExtender
- Specified by:
processIncoming
in interfaceStep
- Overrides:
processIncoming
in classBaseStep
- Parameters:
data
- the data to process- Throws:
WekaException
- if a problem occurs
-
getInteractiveViewers
When running in a graphical execution environment a step can make one or more popup Viewer components available. These might be used to display results, graphics etc. Returning null indicates that the step has no such additional graphical views. The map returned by this method should be keyed by action name (e.g. "View results"), and values should be fully qualified names of the corresponding StepInteractiveView implementation. Furthermore, the contents of this map can (and should) be dependent on whether a particular viewer should be made available - i.e. if execution hasn't occurred yet, or if a particular incoming connection type is not present, then it might not be possible to view certain results. Viewers can implement StepInteractiveView directly (in which case they need to extends JPanel), or extends the AbstractInteractiveViewer class. The later extends JPanel, uses a BorderLayout, provides a "Close" button and a method to add additional buttons.- Specified by:
getInteractiveViewers
in interfaceStep
- Overrides:
getInteractiveViewers
in classBaseStep
- Returns:
- a map of viewer component names, or null if this step has no graphical views
-
getPlots
Get the plots currently stored in this step- Returns:
-
isDataIsThresholdData
public boolean isDataIsThresholdData()Returns true if the plots being stored are threshold plots- Returns:
- true if the plots are threshold plots
-
clearPlotData
public void clearPlotData()Clear all plot data (both onscreen and offscreen) -
retrieveData
Retrieve the data (plots) stored in this step- Specified by:
retrieveData
in interfaceDataCollector
- Returns:
- the data stored in this step
-
restoreData
Restore the data (plots) for this step- Specified by:
restoreData
in interfaceDataCollector
- Parameters:
data
- the data to set- Throws:
WekaException
- if a problem occurs
-
stepInit
Initialize the step- Specified by:
stepInit
in interfaceBaseStepExtender
- Specified by:
stepInit
in interfaceStep
- Throws:
WekaException
- if a problem occurs during initialization
-
getCustomEditorForStep
Return the fully qualified name of a custom editor component (JComponent) to use for editing the properties of the step. This method can return null, in which case the system will dynamically generate an editor using the GenericObjectEditor- Specified by:
getCustomEditorForStep
in interfaceStep
- Overrides:
getCustomEditorForStep
in classBaseStep
- Returns:
- the fully qualified name of a step editor component
-