weka.gui.beans

## Class ModelPerformanceChart

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - javax.swing.JComponent
      - - javax.swing.JPanel
        - - weka.gui.beans.ModelPerformanceChart

- All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.beans.beancontext.BeanContextChild, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, EnvironmentHandler, BeanCommon, EventConstraints, HeadlessEventCollector, ThresholdDataListener, UserRequestAcceptor, Visible, VisualizableErrorListener

      public class ModelPerformanceChart
      extends javax.swing.JPanel
      implements ThresholdDataListener, VisualizableErrorListener, Visible, UserRequestAcceptor, EventConstraints, java.io.Serializable, java.beans.beancontext.BeanContextChild, HeadlessEventCollector, BeanCommon, EnvironmentHandler

  Bean that can be used for displaying threshold curves (e.g. ROC curves) and scheme error plots
  Version:
    $Revision: 12409 $
  Author:
    Mark Hall
  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 and Description
    `ModelPerformanceChart()`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `acceptDataSet(ThresholdDataEvent e)` Display a threshold curve.
    `void` | `acceptDataSet(VisualizableErrorEvent e)` Display a scheme error plot.
    `void` | `addImageListener(ImageListener cl)` Add an image listener
    `void` | `addPropertyChangeListener(java.lang.String name, java.beans.PropertyChangeListener pcl)` Add a property change listener to this bean
    `void` | `addVetoableChangeListener(java.lang.String name, java.beans.VetoableChangeListener vcl)` Add a vetoable change listener to this bean
    `boolean` | `connectionAllowed(java.beans.EventSetDescriptor esd)` Returns true if, at this time, the object will accept a connection via the supplied EventSetDescriptor
    `boolean` | `connectionAllowed(java.lang.String eventName)` Returns true if, at this time, the object will accept a connection via the named event
    `void` | `connectionNotification(java.lang.String eventName, java.lang.Object source)` Notify this object that it has been registered as a listener with a source for recieving events described by the named event This object is responsible for recording this fact.
    `void` | `disconnectionNotification(java.lang.String eventName, java.lang.Object source)` Notify this object that it has been deregistered as a listener with a source for named event.
    `java.util.Enumeration<java.lang.String>` | `enumerateRequests()` Describe `enumerateRequests` method here.
    `boolean` | `eventGeneratable(java.lang.String eventName)` Returns true, if at the current time, the named event could be generated.
    `java.beans.beancontext.BeanContext` | `getBeanContext()` Return the bean context (if any) that this bean is embedded in
    `java.lang.String` | `getCustomName()` Get the custom (descriptive) name for this bean (if one has been set)
    `java.lang.String` | `getOffscreenAdditionalOpts()` Get the additional options for the offscreen renderer
    `java.lang.String` | `getOffscreenHeight()` Get the height (in pixels) of the offscreen image to generate
    `java.lang.String` | `getOffscreenRendererName()` Get the name of the renderer to use for offscreen chart rendering operations
    `java.lang.String` | `getOffscreenWidth()` Get the width (in pixels) of the offscreen image to generate.
    `java.lang.String` | `getOffscreenXAxis()` Get the name of the attribute for the x-axis in offscreen plots
    `java.lang.String` | `getOffscreenYAxis()` Get the name of the attribute for the y-axix of offscreen plots.
    `BeanVisual` | `getVisual()` Return the visual appearance of this bean
    `java.lang.String` | `globalInfo()` Global info for this bean
    `boolean` | `isBusy()` Returns true if.
    `static void` | `main(java.lang.String[] args)`
    `void` | `performRequest(java.lang.String request)` Describe `performRequest` method here.
    `void` | `processHeadlessEvents(java.util.List<java.util.EventObject> headless)` Process a list of events that have been collected earlier.
    `void` | `removeImageListener(ImageListener cl)` Remove an image listener
    `void` | `removePropertyChangeListener(java.lang.String name, java.beans.PropertyChangeListener pcl)` Remove a property change listener from this bean
    `void` | `removeVetoableChangeListener(java.lang.String name, java.beans.VetoableChangeListener vcl)` Remove a vetoable change listener from this bean
    `java.util.List<java.util.EventObject>` | `retrieveHeadlessEvents()` Get the list of events processed in headless mode.
    `void` | `setBeanContext(java.beans.beancontext.BeanContext bc)` Set a bean context for this bean
    `void` | `setCustomName(java.lang.String name)` Set a custom (descriptive) name for this bean
    `void` | `setEnvironment(Environment env)` Set environment variables to use.
    `void` | `setLog(Logger logger)` Set a logger
    `void` | `setOffscreenAdditionalOpts(java.lang.String additional)` Set the additional options for the offscreen renderer
    `void` | `setOffscreenHeight(java.lang.String height)` Set the height (in pixels) of the offscreen image to generate
    `void` | `setOffscreenRendererName(java.lang.String rendererName)` Set the name of the renderer to use for offscreen chart rendering operations
    `void` | `setOffscreenWidth(java.lang.String width)` Set the width (in pixels) of the offscreen image to generate.
    `void` | `setOffscreenXAxis(java.lang.String xAxis)` Set the name of the attribute for the x-axis in offscreen plots.
    `void` | `setOffscreenYAxis(java.lang.String yAxis)` Set the name of the attribute for the y-axis in offscreen plots.
    `void` | `setVisual(BeanVisual newVisual)` Set the visual appearance of this bean
    `void` | `stop()` Stop any processing that the bean might be doing.
    `void` | `useDefaultVisual()` Use the default appearance for this bean

    - ### 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, 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, 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, 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`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ModelPerformanceChart

          public ModelPerformanceChart()

  - ### Method Detail

    - #### globalInfo

          public java.lang.String globalInfo()

      Global info for this bean
      Returns:
        a `String` value

    - #### acceptDataSet

          public void acceptDataSet(ThresholdDataEvent e)

      Display a threshold curve.
      Specified by:
        `acceptDataSet` in interface `ThresholdDataListener`
      Parameters:
        `e` - a ThresholdDataEvent

    - #### acceptDataSet

          public void acceptDataSet(VisualizableErrorEvent e)

      Display a scheme error plot.
      Specified by:
        `acceptDataSet` in interface `VisualizableErrorListener`
      Parameters:
        `e` - a VisualizableErrorEvent

    - #### retrieveHeadlessEvents

          public java.util.List<java.util.EventObject> retrieveHeadlessEvents()

      Get the list of events processed in headless mode. May return null or an empty list if not running in headless mode or no events were processed
      Specified by:
        `retrieveHeadlessEvents` in interface `HeadlessEventCollector`
      Returns:
        a list of EventObjects or null.

    - #### processHeadlessEvents

          public void processHeadlessEvents(java.util.List<java.util.EventObject> headless)

      Process a list of events that have been collected earlier. Has no affect if the component is running in headless mode.
      Specified by:
        `processHeadlessEvents` in interface `HeadlessEventCollector`
      Parameters:
        `headless` - a list of EventObjects to process.

    - #### setVisual

          public void setVisual(BeanVisual newVisual)

      Set the visual appearance of this bean
      Specified by:
        `setVisual` in interface `Visible`
      Parameters:
        `newVisual` - a `BeanVisual` value

    - #### getVisual

          public BeanVisual getVisual()

      Return the visual appearance of this bean
      Specified by:
        `getVisual` in interface `Visible`
      Returns:
        a `BeanVisual` value

    - #### useDefaultVisual

          public void useDefaultVisual()

      Use the default appearance for this bean
      Specified by:
        `useDefaultVisual` in interface `Visible`

    - #### enumerateRequests

          public java.util.Enumeration<java.lang.String> enumerateRequests()

      Describe `enumerateRequests` method here.
      Specified by:
        `enumerateRequests` in interface `UserRequestAcceptor`
      Returns:
        an `Enumeration` value

    - #### addPropertyChangeListener

          public void addPropertyChangeListener(java.lang.String name,
                                                java.beans.PropertyChangeListener pcl)

      Add a property change listener to this bean
      Specified by:
        `addPropertyChangeListener` in interface `java.beans.beancontext.BeanContextChild`
      Overrides:
        `addPropertyChangeListener` in class `java.awt.Container`
      Parameters:
        `name` - the name of the property of interest
        `pcl` - a `PropertyChangeListener` value

    - #### removePropertyChangeListener

          public void removePropertyChangeListener(java.lang.String name,
                                                   java.beans.PropertyChangeListener pcl)

      Remove a property change listener from this bean
      Specified by:
        `removePropertyChangeListener` in interface `java.beans.beancontext.BeanContextChild`
      Overrides:
        `removePropertyChangeListener` in class `java.awt.Component`
      Parameters:
        `name` - the name of the property of interest
        `pcl` - a `PropertyChangeListener` value

    - #### addVetoableChangeListener

          public void addVetoableChangeListener(java.lang.String name,
                                                java.beans.VetoableChangeListener vcl)

      Add a vetoable change listener to this bean
      Specified by:
        `addVetoableChangeListener` in interface `java.beans.beancontext.BeanContextChild`
      Parameters:
        `name` - the name of the property of interest
        `vcl` - a `VetoableChangeListener` value

    - #### removeVetoableChangeListener

          public void removeVetoableChangeListener(java.lang.String name,
                                                   java.beans.VetoableChangeListener vcl)

      Remove a vetoable change listener from this bean
      Specified by:
        `removeVetoableChangeListener` in interface `java.beans.beancontext.BeanContextChild`
      Parameters:
        `name` - the name of the property of interest
        `vcl` - a `VetoableChangeListener` value

    - #### setBeanContext

          public void setBeanContext(java.beans.beancontext.BeanContext bc)

      Set a bean context for this bean
      Specified by:
        `setBeanContext` in interface `java.beans.beancontext.BeanContextChild`
      Parameters:
        `bc` - a `BeanContext` value

    - #### getBeanContext

          public java.beans.beancontext.BeanContext getBeanContext()

      Return the bean context (if any) that this bean is embedded in
      Specified by:
        `getBeanContext` in interface `java.beans.beancontext.BeanContextChild`
      Returns:
        a `BeanContext` value

    - #### performRequest

          public void performRequest(java.lang.String request)

      Describe `performRequest` method here.
      Specified by:
        `performRequest` in interface `UserRequestAcceptor`
      Parameters:
        `request` - a `String` value
      Throws:
        `java.lang.IllegalArgumentException` - if an error occurs

    - #### main

          public static void main(java.lang.String[] args)

    - #### setCustomName

          public void setCustomName(java.lang.String name)

      Set a custom (descriptive) name for this bean
      Specified by:
        `setCustomName` in interface `BeanCommon`
      Parameters:
        `name` - the name to use

    - #### getCustomName

          public java.lang.String getCustomName()

      Get the custom (descriptive) name for this bean (if one has been set)
      Specified by:
        `getCustomName` in interface `BeanCommon`
      Returns:
        the custom name (or the default name)

    - #### stop

          public void stop()

      Stop any processing that the bean might be doing.
      Specified by:
        `stop` in interface `BeanCommon`

    - #### isBusy

          public boolean isBusy()

      Returns true if. at this time, the bean is busy with some (i.e. perhaps a worker thread is performing some calculation).
      Specified by:
        `isBusy` in interface `BeanCommon`
      Returns:
        true if the bean is busy.

    - #### addImageListener

          public void addImageListener(ImageListener cl)

      Add an image listener
      Parameters:
        `cl` - a `ImageListener` value

    - #### removeImageListener

          public void removeImageListener(ImageListener cl)

      Remove an image listener
      Parameters:
        `cl` - a `ImageListener` value

    - #### setLog

          public void setLog(Logger logger)

      Set a logger
      Specified by:
        `setLog` in interface `BeanCommon`
      Parameters:
        `logger` - a `Logger` value

    - #### connectionAllowed

          public boolean connectionAllowed(java.beans.EventSetDescriptor esd)

      Returns true if, at this time, the object will accept a connection via the supplied EventSetDescriptor
      Specified by:
        `connectionAllowed` in interface `BeanCommon`
      Parameters:
        `esd` - the EventSetDescriptor
      Returns:
        true if the object will accept a connection

    - #### connectionAllowed

          public boolean connectionAllowed(java.lang.String eventName)

      Returns true if, at this time, the object will accept a connection via the named event
      Specified by:
        `connectionAllowed` in interface `BeanCommon`
      Parameters:
        `eventName` - the name of the event
      Returns:
        true if the object will accept a connection

    - #### connectionNotification

          public void connectionNotification(java.lang.String eventName,
                                             java.lang.Object source)

      Notify this object that it has been registered as a listener with a source for recieving events described by the named event This object is responsible for recording this fact.
      Specified by:
        `connectionNotification` in interface `BeanCommon`
      Parameters:
        `eventName` - the event
        `source` - the source with which this object has been registered as a listener

    - #### disconnectionNotification

          public void disconnectionNotification(java.lang.String eventName,
                                                java.lang.Object source)

      Notify this object that it has been deregistered as a listener with a source for named event. This object is responsible for recording this fact.
      Specified by:
        `disconnectionNotification` in interface `BeanCommon`
      Parameters:
        `eventName` - the event
        `source` - the source with which this object has been registered as a listener

    - #### eventGeneratable

          public boolean eventGeneratable(java.lang.String eventName)

      Returns true, if at the current time, the named event could be generated. Assumes that supplied event names are names of events that could be generated by this bean.
      Specified by:
        `eventGeneratable` in interface `EventConstraints`
      Parameters:
        `eventName` - the name of the event in question
      Returns:
        true if the named event could be generated at this point in time

    - #### setEnvironment

          public void setEnvironment(Environment env)

      Description copied from interface: `EnvironmentHandler`
      Set environment variables to use.
      Specified by:
        `setEnvironment` in interface `EnvironmentHandler`
      Parameters:
        `env` - the environment variables to use

    - #### setOffscreenXAxis

          public void setOffscreenXAxis(java.lang.String xAxis)

      Set the name of the attribute for the x-axis in offscreen plots. This defaults to "False Positive Rate" for threshold curves if not specified.
      Parameters:
        `xAxis` - the name of the xAxis

    - #### getOffscreenXAxis

          public java.lang.String getOffscreenXAxis()

      Get the name of the attribute for the x-axis in offscreen plots
      Returns:
        the name of the xAxis

    - #### setOffscreenYAxis

          public void setOffscreenYAxis(java.lang.String yAxis)

      Set the name of the attribute for the y-axis in offscreen plots. This defaults to "True Positive Rate" for threshold curves if not specified.
      Parameters:
        `yAxis` - the name of the xAxis

    - #### getOffscreenYAxis

          public java.lang.String getOffscreenYAxis()

      Get the name of the attribute for the y-axix of offscreen plots.
      Returns:
        the name of the yAxis.

    - #### setOffscreenWidth

          public void setOffscreenWidth(java.lang.String width)

      Set the width (in pixels) of the offscreen image to generate.
      Parameters:
        `width` - the width in pixels.

    - #### getOffscreenWidth

          public java.lang.String getOffscreenWidth()

      Get the width (in pixels) of the offscreen image to generate.
      Returns:
        the width in pixels.

    - #### setOffscreenHeight

          public void setOffscreenHeight(java.lang.String height)

      Set the height (in pixels) of the offscreen image to generate
      Parameters:
        `height` - the height in pixels

    - #### getOffscreenHeight

          public java.lang.String getOffscreenHeight()

      Get the height (in pixels) of the offscreen image to generate
      Returns:
        the height in pixels

    - #### setOffscreenRendererName

          public void setOffscreenRendererName(java.lang.String rendererName)

      Set the name of the renderer to use for offscreen chart rendering operations
      Parameters:
        `rendererName` - the name of the renderer to use

    - #### getOffscreenRendererName

          public java.lang.String getOffscreenRendererName()

      Get the name of the renderer to use for offscreen chart rendering operations
      Returns:
        the name of the renderer to use

    - #### setOffscreenAdditionalOpts

          public void setOffscreenAdditionalOpts(java.lang.String additional)

      Set the additional options for the offscreen renderer
      Parameters:
        `additional` - additional options

    - #### getOffscreenAdditionalOpts

          public java.lang.String getOffscreenAdditionalOpts()

      Get the additional options for the offscreen renderer
      Returns:
        the additional options