|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.visualize.VisualizePanel.PlotPanel
Inner class to handle plotting
Nested Class Summary |
Nested classes inherited from class javax.swing.JPanel |
javax.swing.JPanel.AccessibleJPanel |
Nested classes inherited from class javax.swing.JComponent |
javax.swing.JComponent.AccessibleJComponent |
Nested classes inherited from class java.awt.Container |
java.awt.Container.AccessibleAWTContainer |
Nested classes inherited from class java.awt.Component |
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy |
Field Summary | |
private int |
m_axisPad
Axis padding |
protected int |
m_cIndex
|
private boolean |
m_createShape
True if the user is currently dragging a box. |
private java.awt.Dimension |
m_newMousePos
contains the position of the mouse (used for rubberbanding). |
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 |
private FastVector |
m_shapePoints
contains the points of the shape currently being drawn. |
private FastVector |
m_shapes
contains all the shapes that have been drawn for these attribs |
protected int |
m_sIndex
|
private int |
m_tickSize
Tick size |
private int |
m_XaxisEnd
|
private int |
m_XaxisStart
the offsets of the axes once label metrics are calculated |
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 |
private int |
m_YaxisEnd
|
private int |
m_YaxisStart
|
protected int |
m_yIndex
|
Fields inherited from class javax.swing.JPanel |
|
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.Container |
|
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). |
private boolean |
checkPoints(double x1,
double y1)
This will check the values of the screen points passed and make sure that they land on the screen |
private void |
drawShapes(java.awt.Graphics gx)
This will draw the shapes created onto the panel. |
FastVector |
getShapes()
|
private int[] |
getXCoords(FastVector v)
This will extract from a polygon shape its x coodrdinates so that an awt.Polygon can be created. |
private int[] |
getYCoords(FastVector v)
This will extract from a polygon shape its y coordinates so that an awt.Polygon can be created. |
private boolean |
inPoly(FastVector ob,
double x,
double y)
This checks to see if The coordinate passed is inside the polygon that was passed. |
private boolean |
inPolyline(FastVector ob,
double x,
double y)
Checks to see if the coordinate passed is inside the ployline passed, Note that this is done using attribute values and not there respective screen values. |
boolean |
inSplit(Instance i)
This will check if an instance is inside or outside of the current shapes. |
private double[] |
lineIntersect(double x1,
double y1,
double x2,
double y2,
double x,
double y,
double offset)
This is called for polylines to see where there two lines that extend to infinity cut the border of the view. |
private FastVector |
makePolygon(FastVector v)
This will convert a polyline to a polygon for drawing purposes So that I can simply use the polygon drawing function. |
private void |
plotReset(Instances inst,
int cIndex)
Reset the visualize panel's buttons and the plot panels instances |
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, getUI, getUIClassID, paramString, setUI, 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, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update |
Methods inherited from class java.awt.Container |
add, add, add, add, add, addContainerListener, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, 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, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected Plot2D m_plot2D
protected Instances m_plotInstances
protected PlotData2D m_originalPlot
protected int m_xIndex
protected int m_yIndex
protected int m_cIndex
protected int m_sIndex
private final int m_axisPad
private final int m_tickSize
private int m_XaxisStart
private int m_YaxisStart
private int m_XaxisEnd
private int m_YaxisEnd
private boolean m_createShape
private FastVector m_shapes
private FastVector m_shapePoints
private java.awt.Dimension m_newMousePos
Constructor Detail |
public VisualizePanel.PlotPanel()
Method Detail |
public FastVector getShapes()
public void cancelShapes()
public void setShapes(FastVector v)
v
- The list of shapes.private boolean checkPoints(double x1, double y1)
x1
- The x coord.y1
- The y coord.public boolean inSplit(Instance i)
i
- The instance to check.
private boolean inPolyline(FastVector ob, double x, double y)
ob
- The polyline.x
- The x coord.y
- The y coord.
private boolean inPoly(FastVector ob, double x, double y)
ob
- The polygon.x
- The x coord.y
- The y coord.
public void setJitter(int j)
j
- the level of jitterpublic void setXindex(int x)
x
- the index of the attribute to use on the x axispublic void setYindex(int y)
y
- the index of the attribute to use on the y axispublic void setCindex(int c)
c
- the index of the attribute to use for colouringpublic void setSindex(int s)
s
- the index of the attribute to use for the shapepublic void setMasterPlot(PlotData2D newPlot) throws java.lang.Exception
newPlot
- the new master plot
java.lang.Exception
- if plot could not be addedpublic void addPlot(PlotData2D newPlot) throws java.lang.Exception
newPlot
- the plot to add.
java.lang.Exception
- if plot could not be addedprotected void switchToLegend()
private void plotReset(Instances inst, int cIndex)
public void setColours(FastVector cols)
cols
- a list of java.awt.Colorsprivate void drawShapes(java.awt.Graphics gx)
gx
- The graphics context.private double[] lineIntersect(double x1, double y1, double x2, double y2, double x, double y, double offset)
x1
- an x point along the liney1
- the accompanying y point.x2
- The x coord of the end point of the line.y2
- The y coord of the end point of the line.x
- 0 or the width of the border line if it has one.y
- 0 or the height of the border line if it has one.offset
- The offset for the border line (either for x or y
dependant on which one doesn't change).
private FastVector makePolygon(FastVector v)
v
- The polyline to convert.
private int[] getXCoords(FastVector v)
v
- The polygon shape.
private int[] getYCoords(FastVector v)
v
- The polygon shape.
public void prePlot(java.awt.Graphics gx)
prePlot
in interface Plot2DCompanion
gx
- the graphics context
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |