org.opensourcephysics.frames
Class HistogramFrame

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjava.awt.Window
              extended byjava.awt.Frame
                  extended byjavax.swing.JFrame
                      extended byorg.opensourcephysics.display.OSPFrame
                          extended byorg.opensourcephysics.display.DrawingFrame
                              extended byorg.opensourcephysics.frames.HistogramFrame
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.datatransfer.ClipboardOwner, java.awt.image.ImageObserver, java.awt.MenuContainer, java.awt.print.Printable, javax.swing.RootPaneContainer, java.io.Serializable, javax.swing.WindowConstants

public class HistogramFrame
extends DrawingFrame

HistogramFrame displays a histogram using a dedicated Histogram object.

See Also:
Serialized Form

Nested Class Summary
protected static class HistogramFrame.HistogramFrameLoader
           
 
Nested classes inherited from class org.opensourcephysics.display.DrawingFrame
DrawingFrame.DrawingFrameLoader
 
Nested classes inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
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
protected  DataTable dataTable
           
protected  Histogram histogram
           
protected  DataTableFrame tableFrame
           
 
Fields inherited from class org.opensourcephysics.display.DrawingFrame
copyItem, customInspector, drawingPanel, editMenu, fileMenu, MENU_SHORTCUT_KEY_MASK, pasteItem, replaceItem, reply
 
Fields inherited from class org.opensourcephysics.display.OSPFrame
animated, applet, appletMode, authorMode, autoclear, buttonPanel, chooserDir, constructorThreadGroup, customButtons, DEFAULT_LOOK_AND_FEEL, defaultLocales, keepHidden, launcherMode, osp_icon_file, strategy
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, 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.print.Printable
NO_SUCH_PAGE, PAGE_EXISTS
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
HistogramFrame(java.lang.String xlabel, java.lang.String ylabel, java.lang.String title)
          A DrawingFrame with a Histogram as its drawable.
 
Method Summary
protected  void addMenuItems()
          Adds Views menu items on the menu bar.
 void append(double v)
          Appends a data point to the histogram.
 void append(double[] values)
          Appends an array of values with 1 occurence.
 void append(double value, double numberOfOccurences)
          Append a value with number of occurences to the Histogram.
 void clearData()
          Clears all the data stored.
 void clearDrawables()
          Removes drawable objects added by the user from this frame.
 double getBinWidth()
          Gets the width of the bins.
 java.util.ArrayList getDrawables()
          Gets Drawable objects added by the user to this frame.
 java.util.ArrayList getDrawables(java.lang.Class c)
          Gets Drawable objects added by the user of an assignable type.
static XML.ObjectLoader getLoader()
          Returns an XML.ObjectLoader to save and load data for this program.
 double[][] getLogPoints()
          Gets an array containing the log values of the values stored in the bins.
 double[][] getPoints()
          Gets a data array containing both the bin centers and the values within the bins.
 double[] getXPoints()
          Gets an array containing the bin centers.
 double[] getYPoints()
          Gets an array containing the values stored in the bins.
 boolean isLogScale()
          Gets the histogram's log scale value.
protected  javax.swing.JMenu loadToolsMenu()
          Adds launchable tools to the specified menu.
 void positiveX()
          Makes the x axis positive by default.
 void setBinOffset(double binOffset)
          Sets the offset of the bins.
 void setBinStyle(short style)
          Sets the style for drawing this histogram.
 void setBinWidth(double binWidth)
          Sets the width of the bins.
 void setLogScale(boolean b)
          Histogram uses logarithmic scale (true/false)
 void setNormalizedToOne(boolean b)
          Normalizes the occurences in this histogram to one (true/false).
 void showDataTable(boolean show)
          Shows or hides the data table.
 
Methods inherited from class org.opensourcephysics.display.DrawingFrame
addDrawable, clearDataAndRepaint, copyAction, getAxes, getDrawingPanel, getObjectOfClass, inspectXML, invalidateImage, isAutoscaleX, isAutoscaleY, limitAutoscaleX, limitAutoscaleY, loadDisplayMenu, lostOwnership, paint, pasteAction, refreshGUI, removeDrawable, removeObjectsOfClass, render, replaceAction, replaceDrawable, saveXML, setAutoscaleX, setAutoscaleY, setCartesian, setCustomInspector, setDrawingPanel, setEnabledCopy, setEnabledPaste, setEnabledReplace, setInteractiveMouseHandler, setInteriorBackground, setLogScale, setMessage, setMessage, setPixelsPerUnit, setPolar, setPreferredMinMax, setPreferredMinMaxX, setPreferredMinMaxY, setSquareAspect, setXLabel, setYLabel
 
Methods inherited from class org.opensourcephysics.display.OSPFrame
addButton, bufferStrategyShow, createBufferStrategy, dispose, getChooser, getConstructorThreadGroup, getDefaultLocales, getMenu, isAnimated, isAuthorMode, isAutoclear, isIconified, isKeepHidden, isLauncherMode, parseXMLMenu, parseXMLMenu, print, removeMenu, removeMenuItem, setAnimated, setAuthorMode, setAutoclear, setDefaultCloseOperation, setFontLevel, setKeepHidden, setLauncherMode, setSize, setTitle, setVisible, show, wishesToExit
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getJMenuBar, getLayeredPane, getRootPane, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, setContentPane, setDefaultLookAndFeelDecorated, setGlassPane, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, update
 
Methods inherited from class java.awt.Frame
addNotify, finalize, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setIconImage, setMaximizedBounds, setMenuBar, setResizable, setState, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getInputContext, getListeners, getLocale, getMostRecentFocusOwner, getOwnedWindows, getOwner, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindowStateListeners, hide, isActive, isFocusableWindow, isFocusCycleRoot, isFocused, isShowing, pack, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, setCursor, setFocusableWindowState, setFocusCycleRoot, setLocationRelativeTo, 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, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setFocusTraversalKeys, setFocusTraversalPolicy, setFont, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, 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, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

histogram

protected Histogram histogram

dataTable

protected DataTable dataTable

tableFrame

protected DataTableFrame tableFrame
Constructor Detail

HistogramFrame

public HistogramFrame(java.lang.String xlabel,
                      java.lang.String ylabel,
                      java.lang.String title)
A DrawingFrame with a Histogram as its drawable.

Parameters:
xlabel - String
ylabel - String
title - String
Method Detail

addMenuItems

protected void addMenuItems()
Adds Views menu items on the menu bar.


loadToolsMenu

protected javax.swing.JMenu loadToolsMenu()
Adds launchable tools to the specified menu.

Overrides:
loadToolsMenu in class DrawingFrame

getXPoints

public double[] getXPoints()
Gets an array containing the bin centers.

Returns:
the bins

getYPoints

public double[] getYPoints()
Gets an array containing the values stored in the bins.

Returns:
the values of the bins

getLogPoints

public double[][] getLogPoints()
Gets an array containing the log values of the values stored in the bins.

Returns:
the values of the bins

getPoints

public double[][] getPoints()
Gets a data array containing both the bin centers and the values within the bins.

Returns:
a double[index][2] array of data

clearDrawables

public void clearDrawables()
Removes drawable objects added by the user from this frame.

Overrides:
clearDrawables in class DrawingFrame

getDrawables

public java.util.ArrayList getDrawables()
Gets Drawable objects added by the user to this frame.

Overrides:
getDrawables in class DrawingFrame
Returns:
the list

getDrawables

public java.util.ArrayList getDrawables(java.lang.Class c)
Gets Drawable objects added by the user of an assignable type. The list contains objects that are assignable from the class or interface.

Overrides:
getDrawables in class DrawingFrame
Parameters:
c - the type of Drawable object
Returns:
the cloned list
See Also:
DrawingFrame.getObjectOfClass(Class c)

clearData

public void clearData()
Clears all the data stored.

Overrides:
clearData in class OSPFrame

append

public void append(double v)
Appends a data point to the histogram.

Parameters:
v - data point

append

public void append(double value,
                   double numberOfOccurences)
Append a value with number of occurences to the Histogram.

Parameters:
value -
numberOfOccurences -

append

public void append(double[] values)
Appends an array of values with 1 occurence.

Parameters:
values -

setLogScale

public void setLogScale(boolean b)
Histogram uses logarithmic scale (true/false)


isLogScale

public boolean isLogScale()
Gets the histogram's log scale value.

Returns:
boolean

setBinWidth

public void setBinWidth(double binWidth)
Sets the width of the bins.

Parameters:
binWidth -

getBinWidth

public double getBinWidth()
Gets the width of the bins.


setBinStyle

public void setBinStyle(short style)
Sets the style for drawing this histogram. Options are DRAW_POINT, which draws a point at the top of the bin, and DRAW_BIN which draws the entire bin down to the x axis. Default is DRAW_BIN.

Parameters:
style -

setBinOffset

public void setBinOffset(double binOffset)
Sets the offset of the bins. Default is 0. A value will be appended to bin n if n*binWidth +binOffset <= value < (n+1)*binWidth +binOffset

Parameters:
binOffset -

setNormalizedToOne

public void setNormalizedToOne(boolean b)
Normalizes the occurences in this histogram to one (true/false).


positiveX

public void positiveX()
Makes the x axis positive by default.


showDataTable

public void showDataTable(boolean show)
Shows or hides the data table.

Parameters:
show - boolean

getLoader

public static XML.ObjectLoader getLoader()
Description copied from class: DrawingFrame
Returns an XML.ObjectLoader to save and load data for this program.