JMSLTM Numerical Library 6.0

com.imsl.chart.qc
Class XbarR

java.lang.Object
  extended by com.imsl.chart.AbstractChartNode
      extended by com.imsl.chart.ChartNode
          extended by com.imsl.chart.Data
              extended by com.imsl.chart.qc.ShewhartControlChart
                  extended by com.imsl.chart.qc.XbarR
All Implemented Interfaces:
Serializable, Cloneable

public class XbarR
extends ShewhartControlChart

XbarR is an X-bar chart for monitoring a process using sample ranges.

The control limits are at

bar{bar x} + k frac{bar{R}}{d_{2,n}sqrt{n}}

where bar{bar{x}} is the grand mean of all of the observations, bar{R} is the mean of the observed ranges, n is the sample size, and k is the value of the "ControlLimit" attribute for the limit. Additionally, d_{2,n}=E[R]/sigma, where R is the range of data from a Gaussian distribution. Therefore bar{R}/d_{2,n} is an estimate of the within sample standard deviation. By default, the chart contains an upper control limit with k=3, a lower control limit with k=-3, and a central line equal to bar{bar{x}}. Additional control limits can be added. The method addWeco adds control limits with k = -2, -1, 1, 2.

See Also:
Example, NIST Engineering Statistics Handbook: Shewhart X-bar and R and S Control Charts, Serialized Form

Field Summary
 
Fields inherited from class com.imsl.chart.qc.ShewhartControlChart
d2, d3
 
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
XbarR(AxisXY axis, double[][] x)
          Creates an X-bar chart from sample data using sample ranges.
XbarR(AxisXY axis, int[] sampleSize, double[] xbar, double[] range)
          Creates an X-bar control chart given the means and ranges for a series of unequally sized samples.
XbarR(AxisXY axis, int sampleSize, double[] xbar, double[] range)
          Creates an X-bar control chart given the means and ranges for a series of equally sized samples.
 
Method Summary
 double capabilityIndexCp(double lowerSpecificationLimit, double upperSpecificationLimit)
          Returns the capability index c_p

c_p=frac{mathrm{USL}-mathrm{LSL}}{6sigma}

 double capabilityIndexCpk(double lowerSpecificationLimit, double upperSpecificationLimit)
          Returns the capability index c_{pk}

c_{pk}=minleft[frac{mathrm{USL}-bar{x}}{3sigma},frac{bar{x}-mathrm{LSL}}{3sigma}right]

static ShewhartControlChart[] createCharts(Chart chart, double[][] x)
          Creates a combined XbarR chart and RChart from data.
static ShewhartControlChart[] createCharts(Chart chart, int[] sampleSize, double[] xbar, double[] range)
          Creates a combined XbarR chart and RChart given the means and ranges for a series of unequally sized samples.
static ShewhartControlChart[] createCharts(Chart chart, int sampleSize, double[] xbar, double[] range)
          Creates a combined XbarR chart and RChart given the means and ranges for a series of equally sized samples.
 double getRbar()
          Returns the value of the "Rbar" attribute, the mean of the ranges for a series of samples.
 void prePaint()
          Setup chart with current settings.
 void setRbar(double rbar)
          Sets the value of the "Rbar" attribute, the mean of the ranges for a series of samples.
 
Methods inherited from class com.imsl.chart.qc.ShewhartControlChart
addCenterLine, addControlLimit, addLowerControlLimit, addUpperControlLimit, addWecoLimits, dataRange, getCenter, getCenterLine, getControlData, getLowerControlLimit, getMeanSampleSize, getSampleSize, getUpperControlLimit, paint, removeControlLimit, setCenter, setData, setData, setSampleSize, setSampleSize, setX
 
Methods inherited from class com.imsl.chart.Data
formatLabel
 
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

XbarR

public XbarR(AxisXY axis,
             double[][] x)
Creates an X-bar chart from sample data using sample ranges.

Parameters:
axis - the AxisXY parent of this node.
x - is an array of arrays containing sample data. The data of the i-th sample is in x[i]. Each row must have between 2 and 50 entries.

XbarR

public XbarR(AxisXY axis,
             int[] sampleSize,
             double[] xbar,
             double[] range)
Creates an X-bar control chart given the means and ranges for a series of unequally sized samples.

Parameters:
axis - the AxisXY parent of this node
sampleSize - is an array containing the nuumber of observations in each sample. Each sample must contain between 2 and 50 observations.
xbar - is an array containing the mean values for a series of samples.
range - is an array containing the ranges of the samples.

XbarR

public XbarR(AxisXY axis,
             int sampleSize,
             double[] xbar,
             double[] range)
Creates an X-bar control chart given the means and ranges for a series of equally sized samples.

Parameters:
axis - the AxisXY parent of this node
sampleSize - is the number of observations in each sample. It must be between 2 and 50.
xbar - is an array containing the mean values for a series of samples.
range - is an array containing the ranges of the samples. The arrays xbar and range must have the same lengths.
Method Detail

capabilityIndexCp

public double capabilityIndexCp(double lowerSpecificationLimit,
                                double upperSpecificationLimit)
Returns the capability index c_p

c_p=frac{mathrm{USL}-mathrm{LSL}}{6sigma}

where LSL and USL are the lower and upper specification limits and

sigma=frac{bar{R}}{d_{2,n}sqrt{n}}

.

Parameters:
lowerSpecificationLimit - is the lower specification limit.
upperSpecificationLimit - is the upper specification limit.
Returns:
the capability index.

capabilityIndexCpk

public double capabilityIndexCpk(double lowerSpecificationLimit,
                                 double upperSpecificationLimit)
Returns the capability index c_{pk}

c_{pk}=minleft[frac{mathrm{USL}-bar{x}}{3sigma},frac{bar{x}-mathrm{LSL}}{3sigma}right]

where LSL and USL are the lower and upper specification limits, bar{x} is the center line, and

sigma=frac{bar{R}}{d_{2,n}sqrt{n}}

.

Parameters:
lowerSpecificationLimit - is the lower specification limit.
upperSpecificationLimit - is the upper specification limit.
Returns:
the capability index.

createCharts

public static ShewhartControlChart[] createCharts(Chart chart,
                                                  double[][] x)
Creates a combined XbarR chart and RChart from data. The viewport of the XbarR chart is [0.2, 0.9] by [0.1, 0.4]. The viewport of the RChart chart is [0.2, 0.9] by [0.5, 0.8].

Parameters:
chart - is the Chart object which is the parent of the two charts being created.
x - is an array of arrays containing sample data. The data of the i-th sample is in x[i]. Each sample must contain at least 2 and no more than 50 observations.
Returns:
an array of length two containing the XBarR chart and the RChart.

createCharts

public static ShewhartControlChart[] createCharts(Chart chart,
                                                  int[] sampleSize,
                                                  double[] xbar,
                                                  double[] range)
Creates a combined XbarR chart and RChart given the means and ranges for a series of unequally sized samples. The viewport of the XbarR chart is [0.2, 0.9] by [0.1, 0.4]. The viewport of the RChart chart is [0.2, 0.9] by [0.5, 0.8].

Parameters:
chart - is the Chart object which is the parent of the two charts being created.
sampleSize - is an array containing the number of observations in each sample. Each sample must have between 2 and 50 observations.
xbar - is an array containing the mean values for a series of samples.
range - is an array containing the ranges of the samples.
Returns:
an array of length two containing the XBarR chart and the RChart.

createCharts

public static ShewhartControlChart[] createCharts(Chart chart,
                                                  int sampleSize,
                                                  double[] xbar,
                                                  double[] range)
Creates a combined XbarR chart and RChart given the means and ranges for a series of equally sized samples. The viewport of the XbarR chart is [0.2, 0.9] by [0.1, 0.4]. The viewport of the RChart chart is [0.2, 0.9] by [0.5, 0.8].

Parameters:
chart - is the Chart object which is the parent of the two charts being created.
sampleSize - is the number of observations in each sample. It must be between 2 and 50.
xbar - is an array containing the mean values for a series of samples.
range - is an array containing the ranges of the samples.
Returns:
an array of length two containing the XBarR chart and the RChart.

getRbar

public double getRbar()
Returns the value of the "Rbar" attribute, the mean of the ranges for a series of samples.

Returns:
the mean of the ranges for a series of samples

prePaint

public void prePaint()
Setup chart with current settings.

Overrides:
prePaint in class ChartNode

setRbar

public void setRbar(double rbar)
Sets the value of the "Rbar" attribute, the mean of the ranges for a series of samples.

Parameters:
rbar - is the mean of the ranges for a series of samples.

JMSLTM Numerical Library 6.0

Copyright © 1970-2009 Visual Numerics, Inc.
Built September 1 2009.