Package weka.gui.explorer
Class ClassifierPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- weka.gui.explorer.ClassifierPanel
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,java.util.EventListener
,javax.accessibility.Accessible
,Explorer.CapabilitiesFilterChangeListener
,Explorer.ExplorerPanel
,Explorer.LogHandler
public class ClassifierPanel extends javax.swing.JPanel implements Explorer.CapabilitiesFilterChangeListener, Explorer.ExplorerPanel, Explorer.LogHandler
0* This panel allows the user to select and configure a classifier, set the attribute of the current dataset to be used as the class, and evaluate the classifier using a number of testing modes (test on the training data, train/test on a percentage split, n-fold cross-validation, test on a separate split). The results of classification runs are stored in a result history so that previous results are accessible.- Version:
- $Revision: 10372 $
- Author:
- Len Trigg (trigg@cs.waikato.ac.nz), Mark Hall (mhall@cs.waikato.ac.nz), Richard Kirkby (rkirkby@cs.waikato.ac.nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
MODEL_FILE_EXTENSION
The filename extension that should be used for model filesstatic java.lang.String
PMML_FILE_EXTENSION
The filename extension that should be used for PMML xml files-
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description ClassifierPanel()
Creates the classifier panel
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
capabilitiesFilterChanged(Explorer.CapabilitiesFilterChangeEvent e)
method gets called in case of a change eventExplorer
getExplorer()
returns the parent Explorer framejava.lang.String
getTabTitle()
Returns the title for the tab in the Explorerjava.lang.String
getTabTitleToolTip()
Returns the tooltip for the tab in the Explorerstatic void
main(java.lang.String[] args)
Tests out the classifier panel from the command line.static void
processClassifierPrediction(Instance toPredict, Classifier classifier, Evaluation eval, Instances plotInstances, FastVector plotShape, FastVector plotSize)
Process a classifier's prediction for an instance and update a set of plotting instances and additional plotting info.void
setExplorer(Explorer parent)
Sets the Explorer to use as parent frame (used for sending notifications about changes in the data)void
setInstances(Instances inst)
Tells the panel to use a new set of instances.void
setLog(Logger newLog)
Sets the Logger to receive informational messagesstatic Instances
setUpVisualizableInstances(Instances trainInstances)
Sets up the structure for the visualizable instances.-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Method Detail
-
setLog
public void setLog(Logger newLog)
Sets the Logger to receive informational messages- Specified by:
setLog
in interfaceExplorer.LogHandler
- Parameters:
newLog
- the Logger that will now get info messages
-
setInstances
public void setInstances(Instances inst)
Tells the panel to use a new set of instances.- Specified by:
setInstances
in interfaceExplorer.ExplorerPanel
- Parameters:
inst
- a set of Instances
-
processClassifierPrediction
public static void processClassifierPrediction(Instance toPredict, Classifier classifier, Evaluation eval, Instances plotInstances, FastVector plotShape, FastVector plotSize)
Process a classifier's prediction for an instance and update a set of plotting instances and additional plotting info. plotInfo for nominal class datasets holds shape types (actual data points have automatic shape type assignment; classifier error data points have box shape type). For numeric class datasets, the actual data points are stored in plotInstances and plotInfo stores the error (which is later converted to shape size values)- Parameters:
toPredict
- the actual data pointclassifier
- the classifiereval
- the evaluation object to use for evaluating the classifier on the instance to predictplotInstances
- a set of plottable instancesplotShape
- additional plotting information (shape)plotSize
- additional plotting information (size)
-
setUpVisualizableInstances
public static Instances setUpVisualizableInstances(Instances trainInstances)
Sets up the structure for the visualizable instances. This dataset contains the original attributes plus the classifier's predictions for the class as an attribute called "predicted+WhateverTheClassIsCalled".- Parameters:
trainInstances
- the instances that the classifier is trained on- Returns:
- a new set of instances containing one more attribute (predicted class) than the trainInstances
-
capabilitiesFilterChanged
public void capabilitiesFilterChanged(Explorer.CapabilitiesFilterChangeEvent e)
method gets called in case of a change event- Specified by:
capabilitiesFilterChanged
in interfaceExplorer.CapabilitiesFilterChangeListener
- Parameters:
e
- the associated change event
-
setExplorer
public void setExplorer(Explorer parent)
Sets the Explorer to use as parent frame (used for sending notifications about changes in the data)- Specified by:
setExplorer
in interfaceExplorer.ExplorerPanel
- Parameters:
parent
- the parent frame
-
getExplorer
public Explorer getExplorer()
returns the parent Explorer frame- Specified by:
getExplorer
in interfaceExplorer.ExplorerPanel
- Returns:
- the parent
-
getTabTitle
public java.lang.String getTabTitle()
Returns the title for the tab in the Explorer- Specified by:
getTabTitle
in interfaceExplorer.ExplorerPanel
- Returns:
- the title of this tab
-
getTabTitleToolTip
public java.lang.String getTabTitleToolTip()
Returns the tooltip for the tab in the Explorer- Specified by:
getTabTitleToolTip
in interfaceExplorer.ExplorerPanel
- Returns:
- the tooltip of this tab
-
main
public static void main(java.lang.String[] args)
Tests out the classifier panel from the command line.- Parameters:
args
- may optionally contain the name of a dataset to load.
-
-