Package weka.gui

Class AttributeSelectionPanel

  • All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

    public class AttributeSelectionPanel
    extends javax.swing.JPanel
    Creates a panel that displays the attributes contained in a set of instances, letting the user toggle whether each attribute is selected or not (eg: so that unselected attributes can be removed before classification).
    Besides the All, None and Invert button one can also choose attributes which names match a regular expression (Pattern button). E.g. for removing all attributes that contain an ID and therefore unwanted information, one can match all names that contain "id" in the name:
       (.*_id_.*|.*_id$|^id$)
    This does not match e.g. "humidity", which could be an attribute we would like to keep.
    Version:
    $Revision: 7059 $
    Author:
    Len Trigg (trigg@cs.waikato.ac.nz), FracPete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.BaselineResizeBehavior
    • Field Summary

      • Fields inherited from class javax.swing.JComponent

        TOOL_TIP_TEXT_KEY, 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

      Constructors 
      Constructor Description
      AttributeSelectionPanel()
      Creates the attribute selection panel with no initial instances.
      AttributeSelectionPanel​(boolean include, boolean remove, boolean invert, boolean pattern)
      Creates the attribute selection panel with no initial instances.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.awt.Dimension getPreferredScrollableViewportSize()  
      int[] getSelectedAttributes()
      Gets an array containing the indices of all selected attributes.
      javax.swing.ListSelectionModel getSelectionModel()
      Gets the selection model used by the table.
      javax.swing.table.TableModel getTableModel()
      Get the table model in use (or null if no instances have been set yet).
      static void main​(java.lang.String[] args)
      Tests the attribute selection panel from the command line.
      void setInstances​(Instances newInstances)
      Sets the instances who's attribute names will be displayed.
      void setPreferredScrollableViewportSize​(java.awt.Dimension d)  
      void setSelectedAttributes​(boolean[] selected)
      Set the selected attributes in the widget.
      • 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
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • AttributeSelectionPanel

        public AttributeSelectionPanel()
        Creates the attribute selection panel with no initial instances.
      • AttributeSelectionPanel

        public AttributeSelectionPanel​(boolean include,
                                       boolean remove,
                                       boolean invert,
                                       boolean pattern)
        Creates the attribute selection panel with no initial instances.
        Parameters:
        include - true if the include button is to be shown
        remove - true if the remove button is to be shown
        invert - true if the invert button is to be shown
        patter - true if the pattern button is to be shown
    • Method Detail

      • getPreferredScrollableViewportSize

        public java.awt.Dimension getPreferredScrollableViewportSize()
      • setPreferredScrollableViewportSize

        public void setPreferredScrollableViewportSize​(java.awt.Dimension d)
      • setInstances

        public void setInstances​(Instances newInstances)
        Sets the instances who's attribute names will be displayed.
        Parameters:
        newInstances - the new set of instances
      • getSelectedAttributes

        public int[] getSelectedAttributes()
        Gets an array containing the indices of all selected attributes.
        Returns:
        the array of selected indices.
      • setSelectedAttributes

        public void setSelectedAttributes​(boolean[] selected)
                                   throws java.lang.Exception
        Set the selected attributes in the widget. Note that setInstances() must have been called first.
        Parameters:
        selected - an array of boolean indicating which attributes are to have their check boxes selected.
        Throws:
        java.lang.Exception - if the supplied array of booleans does not have the same number of elements as there are attributes.
      • getTableModel

        public javax.swing.table.TableModel getTableModel()
        Get the table model in use (or null if no instances have been set yet).
        Returns:
        the table model in use or null if no instances have been seen yet.
      • getSelectionModel

        public javax.swing.ListSelectionModel getSelectionModel()
        Gets the selection model used by the table.
        Returns:
        a value of type 'ListSelectionModel'
      • main

        public static void main​(java.lang.String[] args)
        Tests the attribute selection panel from the command line.
        Parameters:
        args - must contain the name of an arff file to load.