public class BoundaryPanel
extends javax.swing.JPanel
JPanel
,
Serialized FormModifier and Type | Field and Description |
---|---|
static java.awt.Color[] |
DEFAULT_COLORS
default colours for classes
|
static double |
REMOVE_POINT_RADIUS
The distance we can click away from a point in the GUI and still remove it.
|
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
BoundaryPanel(int panelWidth,
int panelHeight)
Creates a new
BoundaryPanel instance. |
Modifier and Type | Method and Description |
---|---|
void |
addActionListener(java.awt.event.ActionListener newListener)
Register a listener to be notified when plotting completes
|
void |
addMouseListener(java.awt.event.MouseListener l)
Adds a mouse listener.
|
void |
addTrainingInstance(Instance instance)
Adds a training instance to the visualization dataset.
|
void |
addTrainingInstanceFromMouseLocation(int mouseX,
int mouseY,
int classAttIndex,
double classValue)
Adds a training instance to our dataset, based on the coordinates of the
mouse on the panel.
|
void |
computeMinMaxAtts()
Set up the bounds of our graphic based by finding the smallest reasonable
area in the instance space to surround our data points.
|
java.util.ArrayList<java.awt.Color> |
getColors()
Get the current vector of Color objects used for the classes
|
double |
getGeneratorSamplesBase()
Get the base used for computing the number of samples to obtain from each
generator
|
double |
getMaxXBound()
Gets the maximum x-coordinate bound, in training-instance units (not mouse
coordinates).
|
double |
getMaxYBound()
Gets the maximum x-coordinate bound, in training-instance units (not mouse
coordinates).
|
double |
getMinXBound()
Gets the minimum x-coordinate bound, in training-instance units (not mouse
coordinates).
|
double |
getMinYBound()
Gets the minimum y-coordinate bound, in training-instance units (not mouse
coordinates).
|
int |
getNumSamplesPerRegion()
Get the number of points to sample from a region (fixed dimensions).
|
boolean |
getPlotTrainingData()
Returns true if training data is to be superimposed
|
static void |
main(java.lang.String[] args)
Main method for testing this class
|
void |
plotTrainingData()
Render the training points on-screen.
|
void |
removeActionListener(java.awt.event.ActionListener removeListener)
Remove a listener
|
void |
removeAllInstances()
Deletes all training instances from our dataset.
|
void |
removeTrainingInstanceFromMouseLocation(int mouseX,
int mouseY)
Removes a single training instance from our dataset, if there is one that
is close enough to the specified mouse location.
|
void |
replot()
Quickly replot the display using cached probability estimates
|
void |
setClassifier(Classifier classifier)
Set the classifier to use.
|
void |
setColors(java.util.ArrayList<java.awt.Color> colors)
Set a vector of Color objects for the classes
|
void |
setDataGenerator(DataGenerator dataGenerator)
Set the data generator to use for generating new instances
|
void |
setGeneratorSamplesBase(double ksb)
Set the base for computing the number of samples to obtain from each
generator.
|
void |
setNumSamplesPerRegion(int num)
Set the number of points to uniformly sample from a region (fixed
dimensions).
|
void |
setPlotTrainingData(boolean pg)
Set whether to superimpose the training data plot
|
void |
setTrainingData(Instances trainingData)
Set the training data to use
|
void |
setXAttribute(int xatt)
Set the x attribute index
|
void |
setYAttribute(int yatt)
Set the y attribute index
|
void |
start()
Start the plotting thread
|
void |
startPlotThread()
Starts the plotting thread.
|
void |
stopPlotting()
Stop the plotting thread
|
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
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
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
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, 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, getPeer, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public static final java.awt.Color[] DEFAULT_COLORS
public static final double REMOVE_POINT_RADIUS
public BoundaryPanel(int panelWidth, int panelHeight)
BoundaryPanel
instance.panelWidth
- the width in pixels of the panelpanelHeight
- the height in pixels of the panelpublic void setNumSamplesPerRegion(int num)
num
- an int
valuepublic int getNumSamplesPerRegion()
int
valuepublic void setGeneratorSamplesBase(double ksb)
ksb
- a double
valuepublic double getGeneratorSamplesBase()
double
valuepublic void stopPlotting()
public void computeMinMaxAtts()
public void start() throws java.lang.Exception
java.lang.Exception
- if an error occurspublic void plotTrainingData()
public void setTrainingData(Instances trainingData) throws java.lang.Exception
trainingData
- the training datajava.lang.Exception
- if an error occurspublic void addTrainingInstance(Instance instance)
public void addActionListener(java.awt.event.ActionListener newListener)
newListener
- the listener to addpublic void removeActionListener(java.awt.event.ActionListener removeListener)
removeListener
- the listener to removepublic void setClassifier(Classifier classifier)
classifier
- the classifier to usepublic void setDataGenerator(DataGenerator dataGenerator)
dataGenerator
- the data generator to usepublic void setXAttribute(int xatt) throws java.lang.Exception
xatt
- index of the attribute to use on the x axisjava.lang.Exception
- if an error occurspublic void setYAttribute(int yatt) throws java.lang.Exception
yatt
- index of the attribute to use on the y axisjava.lang.Exception
- if an error occurspublic void setColors(java.util.ArrayList<java.awt.Color> colors)
colors
- a FastVector
valuepublic void setPlotTrainingData(boolean pg)
pg
- a boolean
valuepublic boolean getPlotTrainingData()
boolean
valuepublic java.util.ArrayList<java.awt.Color> getColors()
FastVector
valuepublic void replot()
public void addTrainingInstanceFromMouseLocation(int mouseX, int mouseY, int classAttIndex, double classValue)
mouseX
- the x coordinate of the mouse, in pixels.mouseY
- the y coordinate of the mouse, in pixels.classAttIndex
- the index of the attribute that is currently selected
as the class attribute.classValue
- the value to set the class to in our new point.public void removeAllInstances()
public void removeTrainingInstanceFromMouseLocation(int mouseX, int mouseY)
public void startPlotThread()
public void addMouseListener(java.awt.event.MouseListener l)
addMouseListener
in class java.awt.Component
public double getMinXBound()
public double getMinYBound()
public double getMaxXBound()
public double getMaxYBound()
public static void main(java.lang.String[] args)
args
- a String[]
value