Package weka.gui.visualize
Class Plot2D
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.visualize.Plot2D
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
This class plots datasets in two dimensions. It can also plot classifier
errors and clusterer predictions.
- Version:
- $Revision: 14582 $
- Author:
- Mark Hall (mhall@cs.waikato.ac.nz)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addPlot
(PlotData2D newPlot) Add a plot to the list of plots to displayvoid
applySettings
(Settings settings, String ownerID) Apply settingsdouble
convertToAttribX
(double scx) convert a Panel x coordinate to a raw x value.double
convertToAttribY
(double scy) convert a Panel y coordinate to a raw y value.double
convertToPanelX
(double xval) Convert an raw x value to Panel x coordinate.double
convertToPanelY
(double yval) Convert an raw y value to Panel y coordinate.void
Determine the min and max values for axis and colouring attributesGet the master plotdouble
getMaxC()
Return the current max value of the colouring attributedouble
getMaxX()
Return the current max value of the attribute plotted on the x axisdouble
getMaxY()
Return the current max value of the attribute plotted on the y axisdouble
getMinC()
Return the current min value of the colouring attributedouble
getMinX()
Return the current min value of the attribute plotted on the x axisdouble
getMinY()
Return the current min value of the attribute plotted on the y axisgetPlots()
Return the list of plotsstatic void
Main method for testing this classvoid
Renders this componentvoid
Clears all plotsvoid
searchPoints
(int x, int y, boolean newFrame) Pops up a window displaying attribute information on any instances at a point+-plotting_point_size (in panel coordinates)void
setCindex
(int c) Set the index of the attribute to use for colouringvoid
setColours
(ArrayList<Color> cols) Set a list of colours to use when colouring points according to class values or cluster numbersvoid
setInstances
(Instances inst) Sets the master plot from a set of instancesvoid
setJitter
(int j) Set level of jitter and repaint the plot using the new jitter valuevoid
setMasterPlot
(PlotData2D master) Set the master plot.void
Set a companion class.void
setXindex
(int x) Set the index of the attribute to go on the x axisvoid
setYindex
(int y) Set the index of the attribute to go on the y axisMethods 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
-
Field Details
-
MAX_SHAPES
public static final int MAX_SHAPES- See Also:
-
ERROR_SHAPE
public static final int ERROR_SHAPE- See Also:
-
MISSING_SHAPE
public static final int MISSING_SHAPE- See Also:
-
CONST_AUTOMATIC_SHAPE
public static final int CONST_AUTOMATIC_SHAPE- See Also:
-
X_SHAPE
public static final int X_SHAPE- See Also:
-
PLUS_SHAPE
public static final int PLUS_SHAPE- See Also:
-
DIAMOND_SHAPE
public static final int DIAMOND_SHAPE- See Also:
-
TRIANGLEUP_SHAPE
public static final int TRIANGLEUP_SHAPE- See Also:
-
TRIANGLEDOWN_SHAPE
public static final int TRIANGLEDOWN_SHAPE- See Also:
-
DEFAULT_SHAPE_SIZE
public static final int DEFAULT_SHAPE_SIZE- See Also:
-
-
Constructor Details
-
Plot2D
public Plot2D()Constructor
-
-
Method Details
-
applySettings
Apply settings- Parameters:
settings
- the settings to applyownerID
- the ID of the owner perspective, panel etc. to use when looking up our settings
-
setPlotCompanion
Set a companion class. This is a class that might want to render something on the plot before we do our thing. Eg, Malcolm's shape drawing stuff needs to happen before we plot axis and points- Parameters:
p
- a companion class
-
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
-
setColours
Set a list of colours to use when colouring points according to class values or cluster numbers- Parameters:
cols
- the list of colours to use
-
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
-
getPlots
Return the list of plots- Returns:
- the list of plots
-
getMasterPlot
Get the master plot- Returns:
- the master plot
-
getMaxX
public double getMaxX()Return the current max value of the attribute plotted on the x axis- Returns:
- the max x value
-
getMaxY
public double getMaxY()Return the current max value of the attribute plotted on the y axis- Returns:
- the max y value
-
getMinX
public double getMinX()Return the current min value of the attribute plotted on the x axis- Returns:
- the min x value
-
getMinY
public double getMinY()Return the current min value of the attribute plotted on the y axis- Returns:
- the min y value
-
getMaxC
public double getMaxC()Return the current max value of the colouring attribute- Returns:
- the max colour value
-
getMinC
public double getMinC()Return the current min value of the colouring attribute- Returns:
- the min colour value
-
setInstances
Sets the master plot from a set of instances- Parameters:
inst
- the instances- Throws:
Exception
- if instances could not be set
-
setMasterPlot
Set the master plot.- Parameters:
master
- the plot to make the master plot- Throws:
Exception
- if the plot could not be set.
-
removeAllPlots
public void removeAllPlots()Clears all plots -
addPlot
Add a plot to the list of plots to display- Parameters:
newPlot
- the new plot to add- Throws:
Exception
- if the plot could not be added
-
searchPoints
public void searchPoints(int x, int y, boolean newFrame) Pops up a window displaying attribute information on any instances at a point+-plotting_point_size (in panel coordinates)- Parameters:
x
- the x value of the clicked pointy
- the y value of the clicked pointnewFrame
- true if instance info is to be displayed in a new frame.
-
determineBounds
public void determineBounds()Determine the min and max values for axis and colouring attributes -
convertToAttribX
public double convertToAttribX(double scx) convert a Panel x coordinate to a raw x value.- Parameters:
scx
- The Panel x coordinate- Returns:
- A raw x value.
-
convertToAttribY
public double convertToAttribY(double scy) convert a Panel y coordinate to a raw y value.- Parameters:
scy
- The Panel y coordinate- Returns:
- A raw y value.
-
convertToPanelX
public double convertToPanelX(double xval) Convert an raw x value to Panel x coordinate.- Parameters:
xval
- the raw x value- Returns:
- an x value for plotting in the panel.
-
convertToPanelY
public double convertToPanelY(double yval) Convert an raw y value to Panel y coordinate.- Parameters:
yval
- the raw y value- Returns:
- an y value for plotting in the panel.
-
paintComponent
Renders this component- Parameters:
gx
- the graphics context
-
main
Main method for testing this class- Parameters:
args
- arguments
-