Package uk.ac.starlink.topcat.plot
Class DensityWindow
java.lang.Object
java.awt.Component
java.awt.Container
java.awt.Window
java.awt.Frame
javax.swing.JFrame
uk.ac.starlink.topcat.AuxWindow
uk.ac.starlink.topcat.plot.GraphicsWindow
uk.ac.starlink.topcat.plot.DensityWindow
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,RootPaneContainer
,WindowConstants
Graphics window which displays a density plot, that is a 2-dimensional
histogram. Each screen pixel corresponds to a bin of the 2-d histogram,
and is coloured according to how many items fall into it.
- Since:
- 1 Dec 2005
- Author:
- Mark Taylor
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class uk.ac.starlink.topcat.plot.GraphicsWindow
GraphicsWindow.ExportAction, GraphicsWindow.ReplotListener
Nested classes/interfaces inherited from class javax.swing.JFrame
JFrame.AccessibleJFrame
Nested classes/interfaces inherited from class java.awt.Frame
Frame.AccessibleAWTFrame
Nested classes/interfaces inherited from class java.awt.Window
Window.AccessibleAWTWindow, Window.Type
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Fields inherited from class javax.swing.JFrame
accessibleContext, 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 java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, EXIT_ON_CLOSE, HIDE_ON_CLOSE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected uk.ac.starlink.ttools.plot.PlotState
Constructs a new PlotState.protected PointSelector
Returns a new PointSelector instance to be used for selecting points to be plotted.protected StyleEditor
Creates a style editor suitable for this window.protected void
doReplot
(uk.ac.starlink.ttools.plot.PlotState state) Performs an actual plot.void
exportFits
(OutputStream ostrm) Exports the grids currently displayed in the plot as a FITS image (primary HDU).uk.ac.starlink.ttools.plot.StyleSet
getDefaultStyles
(int npoint) Returns a StyleSet which can supply markers.int
Returns the number of axes whose ranges can be reset excluding any auxiliary axes.protected JComponent
Returns the component containing the graphics output of this window.uk.ac.starlink.ttools.plot.PlotState
Returns an object which characterises the choices the user has made in the GUI to indicate the plot that s/he wants to see.protected void
init()
Perform initialisation which can't be done in the constructor (typically because it calls potentially overridden methods).protected boolean
isLegendInteresting
(uk.ac.starlink.ttools.plot.PlotState state) Indicates whether the legend is worth showing for a given plot state.Methods inherited from class uk.ac.starlink.topcat.plot.GraphicsWindow
addExtraAxes, addNewSubsets, calculateRanges, createErrorModeMenu, createErrorModeModels, createErrorRendererMenu, createMarkerStyleMenu, dispose, fixDefaultErrorRenderers, getAuxAxisCount, getAxisEditAction, getAxisWindow, getColumnIndex, getDataRanges, getErrorModeModels, getExportMenu, getExtrasPanel, getFlipModels, getGridModel, getLegendModel, getLogModels, getPadRatio, getPlot, getPoints, getPointSelectors, getPointSelectorToolBar, getReplotAction, getReplotListener, getRescaleAction, getStandardMarkStyleSets, getStatusBox, getStyles, getViewRanges, getVisibleAuxAxisCount, replot, setGuidePointCount, setMainTable, setPadRatio, setStyles, setVisible
Methods inherited from class uk.ac.starlink.topcat.AuxWindow
addHelp, beep, confirm, createImportTableAction, createSaveTableAction, getBodyPanel, getControlPanel, getHelpMenu, getIconImage, getMainArea, getSponsorLogos, getToolBar, getWindowMenu, makeTitledBorder, makeVisible, placeProgressBar, positionAfter, recursiveSetEnabled, setBusy, setCloseIsExit, setMainHeading
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, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setBackground, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setOpacity, setResizable, setShape, setState, setTitle, setUndecorated
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBackground, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOpacity, getOwnedWindows, getOwner, getOwnerlessWindows, getShape, getToolkit, getType, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isAutoRequestFocus, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isOpaque, isShowing, isValidateRoot, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setAutoRequestFocus, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocation, setLocation, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setType, 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, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, 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, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, 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, 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, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, requestFocusInWindow, resize, resize, revalidate, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setMaximumSize, setMixingCutoutShape, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusBackward, 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
-
Constructor Details
-
DensityWindow
Constructs a new DensityWindow.- Parameters:
parent
- parent component (may be used for positioning)
-
-
Method Details
-
init
protected void init()Description copied from class:GraphicsWindow
Perform initialisation which can't be done in the constructor (typically because it calls potentially overridden methods).- Overrides:
init
in classGraphicsWindow
-
getPlotPanel
Description copied from class:GraphicsWindow
Returns the component containing the graphics output of this window. This is the component which is exported or printed etc alongside the legend which is managed by GraphicsWindow. It should therefore contain only the output data, not any user interface decoration.- Specified by:
getPlotPanel
in classGraphicsWindow
- Returns:
- plot container
-
createStyleEditor
Description copied from class:GraphicsWindow
Creates a style editor suitable for this window.- Specified by:
createStyleEditor
in classGraphicsWindow
- Returns:
- new style editor
-
createPointSelector
Description copied from class:GraphicsWindow
Returns a new PointSelector instance to be used for selecting points to be plotted.- Overrides:
createPointSelector
in classGraphicsWindow
- Returns:
- new point selector component
-
getMainRangeCount
public int getMainRangeCount()Description copied from class:GraphicsWindow
Returns the number of axes whose ranges can be reset excluding any auxiliary axes.- Overrides:
getMainRangeCount
in classGraphicsWindow
-
createPlotState
protected uk.ac.starlink.ttools.plot.PlotState createPlotState()Description copied from class:GraphicsWindow
Constructs a new PlotState. This is called byGraphicsWindow.getPlotState()
prior to the PlotState configuration done there. Thus if a subclass wants to provide and configure a particular state (for instance one of a specialised subclass of PlotState) it can override this method to do so. The default implementation just invokesnew PlotState()
.- Overrides:
createPlotState
in classGraphicsWindow
- Returns:
- returns a new PlotState object ready for generic configuration
-
getPlotState
public uk.ac.starlink.ttools.plot.PlotState getPlotState()Description copied from class:GraphicsWindow
Returns an object which characterises the choices the user has made in the GUI to indicate the plot that s/he wants to see.The
GraphicsWindow
implementation of this method as well as populating the state with standard information also callsPointSelection.readPoints(javax.swing.BoundedRangeModel)
andGraphicsWindow.calculateRanges(uk.ac.starlink.topcat.plot.PointSelection, uk.ac.starlink.topcat.plot.Points, uk.ac.starlink.ttools.plot.PlotState)
if necessary.- Overrides:
getPlotState
in classGraphicsWindow
- Returns:
- snapshot of the currently-selected plot request
-
doReplot
protected void doReplot(uk.ac.starlink.ttools.plot.PlotState state) Description copied from class:GraphicsWindow
Performs an actual plot.- Overrides:
doReplot
in classGraphicsWindow
- Parameters:
state
- plot state determining details of plot configuration
-
getDefaultStyles
public uk.ac.starlink.ttools.plot.StyleSet getDefaultStyles(int npoint) Description copied from class:GraphicsWindow
Returns a StyleSet which can supply markers. Thenpoint
may be used as a hint for how many points are expected to be drawn with it.- Specified by:
getDefaultStyles
in classGraphicsWindow
- Parameters:
npoint
- approximate number of points - use -1 for unknown- Returns:
- style factory
-
isLegendInteresting
protected boolean isLegendInteresting(uk.ac.starlink.ttools.plot.PlotState state) Description copied from class:GraphicsWindow
Indicates whether the legend is worth showing for a given plot state.- Overrides:
isLegendInteresting
in classGraphicsWindow
- Parameters:
state
- plot state- Returns:
- true iff the legend would show non-trivial information
-
exportFits
Exports the grids currently displayed in the plot as a FITS image (primary HDU).- Parameters:
ostrm
- output stream- Throws:
IOException
-