at.tuwien.ifs.somtoolbox.apps.viewer
Class ComponentPlaneClusteringFrame

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by at.tuwien.ifs.somtoolbox.apps.viewer.ComponentPlaneClusteringFrame
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, javax.swing.event.ChangeListener, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class ComponentPlaneClusteringFrame
extends javax.swing.JFrame
implements java.awt.event.ActionListener, javax.swing.event.ChangeListener

This class implements ordered display and clustering of SOM Component Planes. The components planes are transformed to vectors, and are subsequently either displayed in their order, or clustered on a new SOM.

Version:
$Id: ComponentPlaneClusteringFrame.java 3984 2010-12-21 16:30:25Z frank $
Author:
Arnaud Moreau, Peter Vorlaufer, Rudolf Mayer
See Also:
Serialized Form

Nested Class Summary
private  class ComponentPlaneClusteringFrame.ComponentPlaneClustering
           
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private  javax.swing.ButtonGroup buttons
           
private  javax.swing.JCheckBox checkboxShowComponentNames
           
private static java.lang.String CLUSTER
           
private  java.util.Hashtable<java.lang.String,ComponentPlaneClusteringFrame.ComponentPlaneClustering> clusteredMapCache
          A cache for already trained SOMs.
private  int dim
           
private static java.lang.String DISPLAY
           
private  AbstractSOMLibSparseInputData input
           
private  java.lang.String[] labels
           
private  GrowingSOM orginalSom
           
private  int padding
           
private  GenericPNodeScrollPane pane
           
private  SOMProperties props
           
private static long serialVersionUID
           
private  SOMViewer somViewer
           
private  javax.swing.SpinnerNumberModel spinnerNumberModelXSize
           
private  javax.swing.SpinnerNumberModel spinnerNumberModelYSize
           
private  javax.swing.JSpinner spinnerXSize
           
private  javax.swing.JSpinner spinnerYSize
           
private  CommonSOMViewerStateData state
           
private  SOMLibTemplateVector tv
           
(package private)  int uHeight
           
private  edu.umd.cs.piccolo.PNode unclusteredComponentPNodeWithNames
           
private  edu.umd.cs.piccolo.PNode unclusteredComponentPNodeWithOutNames
           
(package private)  int uWidth
           
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
ComponentPlaneClusteringFrame(SOMViewer somViewer, GrowingSOM orginalSom, SOMLibTemplateVector tv)
           
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
           
private  ComponentPlaneClusteringFrame.ComponentPlaneClustering createClusteredPane(SOMViewer parent, SOMLibTemplateVector tv, GrowingLayer layer)
           
private  void createComponentImage(ComponentPlanesVisualizer visualizer, edu.umd.cs.piccolo.PNode componentImages, int componentIndex, int xPos, int yPos, boolean showComponentNames)
           
private  ComponentPlanesVisualizer createComponentPlanesVisualizer(CommonSOMViewerStateData state)
           
private  edu.umd.cs.piccolo.PNode createPNode(int xSize, int ySize)
           
private  edu.umd.cs.piccolo.PNode createUnclusteredPane(SOMViewer parent, SOMLibTemplateVector tv, GrowingLayer layer, boolean showComponentNames)
           
private  cern.colt.matrix.DoubleMatrix2D getCov(GrowingLayer layer)
           
 edu.umd.cs.piccolo.PNode makeComponentPNode(ComponentPlanesVisualizer visualizer, GrowingSOM cpsom)
           
private  void reStructureMap(GrowingSOM cpsom)
           
 void stateChanged(javax.swing.event.ChangeEvent e)
           
private  void update()
           
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

CLUSTER

private static final java.lang.String CLUSTER
See Also:
Constant Field Values

DISPLAY

private static final java.lang.String DISPLAY
See Also:
Constant Field Values

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

input

private AbstractSOMLibSparseInputData input

props

private SOMProperties props

labels

private java.lang.String[] labels

orginalSom

private GrowingSOM orginalSom

pane

private GenericPNodeScrollPane pane

spinnerXSize

private javax.swing.JSpinner spinnerXSize

spinnerYSize

private javax.swing.JSpinner spinnerYSize

spinnerNumberModelXSize

private javax.swing.SpinnerNumberModel spinnerNumberModelXSize

spinnerNumberModelYSize

private javax.swing.SpinnerNumberModel spinnerNumberModelYSize

clusteredMapCache

private java.util.Hashtable<java.lang.String,ComponentPlaneClusteringFrame.ComponentPlaneClustering> clusteredMapCache
A cache for already trained SOMs.


unclusteredComponentPNodeWithNames

private edu.umd.cs.piccolo.PNode unclusteredComponentPNodeWithNames

unclusteredComponentPNodeWithOutNames

private edu.umd.cs.piccolo.PNode unclusteredComponentPNodeWithOutNames

uHeight

final int uHeight
See Also:
Constant Field Values

uWidth

final int uWidth
See Also:
Constant Field Values

dim

private int dim

tv

private SOMLibTemplateVector tv

somViewer

private SOMViewer somViewer

state

private CommonSOMViewerStateData state

buttons

private javax.swing.ButtonGroup buttons

padding

private int padding

checkboxShowComponentNames

private javax.swing.JCheckBox checkboxShowComponentNames
Constructor Detail

ComponentPlaneClusteringFrame

public ComponentPlaneClusteringFrame(SOMViewer somViewer,
                                     GrowingSOM orginalSom,
                                     SOMLibTemplateVector tv)
                              throws SOMToolboxException
Throws:
SOMToolboxException
Method Detail

createClusteredPane

private ComponentPlaneClusteringFrame.ComponentPlaneClustering createClusteredPane(SOMViewer parent,
                                                                                   SOMLibTemplateVector tv,
                                                                                   GrowingLayer layer)
                                                                            throws SOMToolboxException
Throws:
SOMToolboxException

makeComponentPNode

public edu.umd.cs.piccolo.PNode makeComponentPNode(ComponentPlanesVisualizer visualizer,
                                                   GrowingSOM cpsom)
                                            throws SOMToolboxException
Throws:
SOMToolboxException

createUnclusteredPane

private edu.umd.cs.piccolo.PNode createUnclusteredPane(SOMViewer parent,
                                                       SOMLibTemplateVector tv,
                                                       GrowingLayer layer,
                                                       boolean showComponentNames)
                                                throws SOMToolboxException
Throws:
SOMToolboxException

createComponentPlanesVisualizer

private ComponentPlanesVisualizer createComponentPlanesVisualizer(CommonSOMViewerStateData state)

createComponentImage

private void createComponentImage(ComponentPlanesVisualizer visualizer,
                                  edu.umd.cs.piccolo.PNode componentImages,
                                  int componentIndex,
                                  int xPos,
                                  int yPos,
                                  boolean showComponentNames)
                           throws SOMToolboxException
Throws:
SOMToolboxException

createPNode

private edu.umd.cs.piccolo.PNode createPNode(int xSize,
                                             int ySize)

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

stateChanged

public void stateChanged(javax.swing.event.ChangeEvent e)
Specified by:
stateChanged in interface javax.swing.event.ChangeListener

update

private void update()

getCov

private cern.colt.matrix.DoubleMatrix2D getCov(GrowingLayer layer)

reStructureMap

private void reStructureMap(GrowingSOM cpsom)