JMSLTM Numerical Library 4.0

com.imsl.chart
Class Pie

java.lang.Object
  extended bycom.imsl.chart.AbstractChartNode
      extended bycom.imsl.chart.ChartNode
          extended bycom.imsl.chart.Axis
              extended bycom.imsl.chart.Pie
All Implemented Interfaces:
Cloneable, Serializable

public class Pie
extends Axis

A pie chart.

The angle of the first slice is determined by the attribute "Reference".

The Pie class is an Axis, because it defines its own mapping to device space.

See Also:
Example, Chart Programmer's Guide: Pie Charts, Serialized Form

Field Summary
 
Fields inherited from class com.imsl.chart.ChartNode
AXIS_X_TOP, AXIS_Y_RIGHT, BAR_TYPE_HORIZONTAL, BAR_TYPE_VERTICAL, DASH_PATTERN_DASH, DASH_PATTERN_DASH_DOT, DASH_PATTERN_DOT, DASH_PATTERN_SOLID, DATA_TYPE_FILL, DATA_TYPE_LINE, DATA_TYPE_MARKER, DATA_TYPE_PICTURE, DATA_TYPE_TUBE, DENDROGRAM_TYPE_HORIZONTAL, DENDROGRAM_TYPE_VERTICAL, FILL_TYPE_GRADIENT, FILL_TYPE_NONE, FILL_TYPE_PAINT, FILL_TYPE_SOLID, LABEL_TYPE_PERCENT, MARKER_TYPE_ASTERISK, MARKER_TYPE_CIRCLE_CIRCLE, MARKER_TYPE_CIRCLE_PLUS, MARKER_TYPE_CIRCLE_X, MARKER_TYPE_DIAMOND_PLUS, MARKER_TYPE_FILLED_CIRCLE, MARKER_TYPE_FILLED_DIAMOND, MARKER_TYPE_FILLED_SQUARE, MARKER_TYPE_FILLED_TRIANGLE, MARKER_TYPE_HOLLOW_CIRCLE, MARKER_TYPE_HOLLOW_DIAMOND, MARKER_TYPE_HOLLOW_SQUARE, MARKER_TYPE_HOLLOW_TRIANGLE, MARKER_TYPE_OCTAGON_PLUS, MARKER_TYPE_OCTAGON_X, MARKER_TYPE_PLUS, MARKER_TYPE_SQUARE_PLUS, MARKER_TYPE_SQUARE_X, MARKER_TYPE_X, TEXT_X_CENTER, TEXT_X_LEFT, TEXT_X_RIGHT, TEXT_Y_BOTTOM, TEXT_Y_CENTER, TEXT_Y_TOP
 
Fields inherited from class com.imsl.chart.AbstractChartNode
AUTOSCALE_DATA, AUTOSCALE_DENSITY, AUTOSCALE_NUMBER, AUTOSCALE_OFF, AUTOSCALE_WINDOW, AXIS_X, AXIS_Y, AXIS_Z, LABEL_TYPE_NONE, LABEL_TYPE_TITLE, LABEL_TYPE_X, LABEL_TYPE_Y, LABEL_TYPE_Z, TRANSFORM_CUSTOM, TRANSFORM_LINEAR, TRANSFORM_LOG
 
Constructor Summary
Pie(Chart chart)
          Constructs a Pie chart object.
Pie(Chart chart, double[] y)
          Constructs a Pie chart object with a specified number of slices.
 
Method Summary
 PieSlice[] getPieSlice()
          Returns the PieSlice objects.
 PieSlice getPieSlice(int index)
          Returns a specified PieSlice.
 void mapDeviceToUser(int devX, int devY, double[] userXY)
          Maps the device coordinates to user coordinates.
 void mapUserToDevice(double userX, double userY, int[] devXY)
          Maps the user coordinates (userX,userY) to the device coordinates devXY.
 PieSlice[] setData(double[] y)
          Changes the data in a Pie chart object.
 void setupMapping()
          Initializes the mappings between user and coordinate space.
 
Methods inherited from class com.imsl.chart.Axis
paint
 
Methods inherited from class com.imsl.chart.ChartNode
addPickListener, firePickListeners, getALT, getAxis, getBackground, getBarGap, getBarType, getBarWidth, getChart, getChartTitle, getChildren, getClipData, getComponent, getConcatenatedViewport, getDataType, getDoubleBuffering, getExplode, getFillOutlineColor, getFillOutlineType, getFillPaint, getFillType, getGradient, getHREF, getLegend, getLineDashPattern, getMarkerDashPattern, getMarkerThickness, getMarkerType, getParent, getReference, getScreenAxis, getScreenSize, getScreenViewport, getSize, getSkipWeekends, getTextAngle, getTextColor, getTitle, getToolTip, getViewport, isBitSet, removePickListener, setALT, setBarGap, setBarType, setBarWidth, setChartTitle, setClipData, setCustomTransform, setDataType, setDoubleBuffering, setExplode, setFillOutlineColor, setFillOutlineColor, setFillOutlineType, setFillPaint, setFillPaint, setFillPaint, setFillType, setGradient, setGradient, setGradient, setHREF, setImage, setLineDashPattern, setMarkerDashPattern, setMarkerThickness, setMarkerType, setReference, setScreenSize, setSize, setSkipWeekends, setTextAngle, setTextColor, setTextColor, setTitle, setTitle, setToolTip, setViewport, setViewport
 
Methods inherited from class com.imsl.chart.AbstractChartNode
clone, clone, clone, clone, getAbstractParent, getAttribute, getAutoscaleInput, getAutoscaleMinimumTimeInterval, getAutoscaleOutput, getBooleanAttribute, getChildList, getColorAttribute, getCustomTransform, getDensity, getDoubleAttribute, getFillColor, getFont, getFontName, getFontSize, getFontStyle, getImage, getIntegerAttribute, getLabelType, getLightColor, getLineColor, getLineWidth, getLocale, getMarkerColor, getMarkerSize, getName, getNumber, getPaint, getStringAttribute, getTextFormat, getTickLength, getTransform, getX, getY, isAncestorOf, isAttributeSet, isAttributeSetAtThisNode, parseColor, remove, setAttribute, setAutoscaleInput, setAutoscaleMinimumTimeInterval, setAutoscaleOutput, setDensity, setFillColor, setFillColor, setFont, setFontName, setFontSize, setFontStyle, setImage, setLabelType, setLightColor, setLightColor, setLineColor, setLineColor, setLineWidth, setLocale, setMarkerColor, setMarkerColor, setMarkerSize, setName, setNumber, setPaint, setTextFormat, setTextFormat, setTickLength, setTransform, setX, setY, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Pie

public Pie(Chart chart)
Constructs a Pie chart object. The "Viewport" attribute for this node is set to [0.2,0.8] by [0.2,0.8].

Parameters:
chart - the Chart parent of this node

Pie

public Pie(Chart chart,
           double[] y)
Constructs a Pie chart object with a specified number of slices. An array of y.length PieSlice nodes are created as children of this node and this array is used to define the attribute "PieSlice" in this node. The "Viewport" attribute for this node is set to [0.2,0.8] by [0.2,0.8].

Parameters:
chart - the Chart parent of this node
y - a double array which contains the values for the pie chart
Method Detail

getPieSlice

public PieSlice[] getPieSlice()
Returns the PieSlice objects.

Returns:
a PieSlice array of PieSlice objects

getPieSlice

public PieSlice getPieSlice(int index)
Returns a specified PieSlice.

Parameters:
index - an int, the 0-based index of the pie slice to return
Returns:
a PieSlice array of PieSlice objects

mapDeviceToUser

public void mapDeviceToUser(int devX,
                            int devY,
                            double[] userXY)
Maps the device coordinates to user coordinates.

Specified by:
mapDeviceToUser in class Axis
Parameters:
devX - an int which specifies the device x-coordinate
devY - an int which specifies the device y-coordinate
userXY - an int[2] array in which the the user coordinates are returned.

mapUserToDevice

public void mapUserToDevice(double userX,
                            double userY,
                            int[] devXY)
Maps the user coordinates (userX,userY) to the device coordinates devXY.

Specified by:
mapUserToDevice in class Axis
Parameters:
userX - a double which specifies the user x-coordinate
userY - a double which specifies the user y-coordinate
devXY - an int[2] array in which the device coordinates are returned.

setData

public PieSlice[] setData(double[] y)
Changes the data in a Pie chart object.

Parameters:
y - a double array which contains the values for the pie chart.
Returns:
A PieSlice array containing the updated PieSlice. If the number of slices is unchanged then the existing pie slice array, defined by the attribute "PieSlice" in this node, is reused. If the number is different, a new array is allocated, using the existing PieSlice elements to initialize the new array.

setupMapping

public void setupMapping()
Initializes the mappings between user and coordinate space. This must be called whenever the screen size, the window or the viewport may have changed. Generally, it is safest to call this each time the chart is repainted.

Specified by:
setupMapping in class Axis

JMSLTM Numerical Library 4.0

Copyright 1970-2006 Visual Numerics, Inc.
Built June 1 2006.