weka.gui.visualize
Class VisualizePanel.PlotPanel

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JPanel
                          |
                          +--weka.gui.visualize.VisualizePanel.PlotPanel
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.image.ImageObserver, java.awt.MenuContainer, Plot2DCompanion, java.io.Serializable
Enclosing class:
VisualizePanel

protected class VisualizePanel.PlotPanel
extends javax.swing.JPanel
implements Plot2DCompanion

Inner class to handle plotting

See Also:
Serialized Form

Inner classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Inner classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Inner classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Inner classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent
 
Field Summary
protected  int m_cIndex
           
protected  PlotData2D m_originalPlot
          The master plot
protected  Plot2D m_plot2D
          The actual generic plotting panel
protected  Instances m_plotInstances
          The instances from the master plot
protected  int m_sIndex
           
protected  int m_xIndex
          Indexes of the attributes to go on the x and y axis and the attribute to use for colouring and the current shape for drawing
protected  int m_yIndex
           
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
VisualizePanel.PlotPanel()
          Constructor
 
Method Summary
 void addPlot(PlotData2D newPlot)
          Adds a plot.
 void cancelShapes()
          Sets the list of shapes to empty and also cancels the current shape being drawn (if applicable).
 FastVector getShapes()
           
 boolean inSplit(Instance i)
          This will check if an instance is inside or outside of the current shapes.
 void prePlot(java.awt.Graphics gx)
          Renders the polygons if necessary
 void setCindex(int c)
          Set the index of the attribute to use for colouring
 void setColours(FastVector cols)
          Set a list of colours to use for plotting points
 void setJitter(int j)
          Set level of jitter and repaint the plot using the new jitter value
 void setMasterPlot(PlotData2D newPlot)
          Clears all existing plots and sets a new master plot
 void setShapes(FastVector v)
          This can be used to set the shapes that should appear.
 void setSindex(int s)
          Set the index of the attribute to use for the shape.
 void setXindex(int x)
          Set the index of the attribute to go on the x axis
 void setYindex(int y)
          Set the index of the attribute to go on the y axis
protected  void switchToLegend()
          Remove the attibute panel and replace it with the legend panel
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUIClassID, paramString, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getVerifyInputWhenFocusTarget, getVisibleRect, getWidth, getX, getY, grabFocus, hasFocus, hide, isDoubleBuffered, isFocusCycleRoot, isFocusTraversable, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processFocusEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getLayout, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setLayout, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, imageUpdate, inside, isDisplayable, isEnabled, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_plot2D

protected Plot2D m_plot2D
The actual generic plotting panel

m_plotInstances

protected Instances m_plotInstances
The instances from the master plot

m_originalPlot

protected PlotData2D m_originalPlot
The master plot

m_xIndex

protected int m_xIndex
Indexes of the attributes to go on the x and y axis and the attribute to use for colouring and the current shape for drawing

m_yIndex

protected int m_yIndex

m_cIndex

protected int m_cIndex

m_sIndex

protected int m_sIndex
Constructor Detail

VisualizePanel.PlotPanel

public VisualizePanel.PlotPanel()
Constructor
Method Detail

getShapes

public FastVector getShapes()
Returns:
The FastVector containing all the shapes.

cancelShapes

public void cancelShapes()
Sets the list of shapes to empty and also cancels the current shape being drawn (if applicable).

setShapes

public void setShapes(FastVector v)
This can be used to set the shapes that should appear.
Parameters:
v - The list of shapes.

inSplit

public boolean inSplit(Instance i)
This will check if an instance is inside or outside of the current shapes.
Parameters:
i - The instance to check.
Returns:
True if 'i' falls inside the shapes, false otherwise.

setJitter

public void setJitter(int j)
Set level of jitter and repaint the plot using the new jitter value
Parameters:
j - the level of jitter

setXindex

public void setXindex(int x)
Set the index of the attribute to go on the x axis
Parameters:
x - the index of the attribute to use on the x axis

setYindex

public void setYindex(int y)
Set the index of the attribute to go on the y axis
Parameters:
y - the index of the attribute to use on the y axis

setCindex

public void setCindex(int c)
Set the index of the attribute to use for colouring
Parameters:
c - the index of the attribute to use for colouring

setSindex

public void setSindex(int s)
Set the index of the attribute to use for the shape.
Parameters:
s - the index of the attribute to use for the shape

setMasterPlot

public void setMasterPlot(PlotData2D newPlot)
                   throws java.lang.Exception
Clears all existing plots and sets a new master plot
Parameters:
newPlot - the new master plot
Throws:
java.lang.Exception - if plot could not be added

addPlot

public void addPlot(PlotData2D newPlot)
             throws java.lang.Exception
Adds a plot. If there are no plots so far this plot becomes the master plot and, if it has a custom colour defined then the class panel is removed.
Parameters:
newPlot - the plot to add.
Throws:
java.lang.Exception - if plot could not be added

switchToLegend

protected void switchToLegend()
Remove the attibute panel and replace it with the legend panel

setColours

public void setColours(FastVector cols)
Set a list of colours to use for plotting points
Parameters:
cols - a list of java.awt.Colors

prePlot

public void prePlot(java.awt.Graphics gx)
Renders the polygons if necessary
Specified by:
prePlot in interface Plot2DCompanion
Parameters:
gx - the graphics context