?>
The boxChart action produces box charts, which are a type of statistical process control (SPC) chart. These charts are used to analyze the variation of a process over time by plotting summary statistics for data collected in subgroups. A box chart displays the distribution of a process variable for each subgroup, typically showing the minimum, first quartile, median, third quartile, and maximum values. This allows for the visual assessment of process stability and the identification of special causes of variation.
| Parameter | Description |
|---|---|
| allN | When set to True, includes all subgroups regardless of whether the subgroup sample size equals the nominal sample size. |
| chartsTable | Specifies the charts summary output data table. |
| ciAlpha | Specifies the confidence level used to compute capability index confidence limits. |
| ciIndices | When set to True, computes capability index confidence limits based on subgroup summary data. |
| ciType | Specifies the type of confidence limits (LOWER, UPPER, or TWOSIDED) computed for capability indices. |
| controlStat | Specifies whether box chart control limits are computed for subgroup means or subgroup medians. |
| display | Specifies a list of results tables to send to the client for display. |
| exChart | When set to True, includes a control chart in the results only when exceptions (out-of-control points) occur. |
| groupByLimit | Suppresses the analysis if the number of groups exceeds the specified value. |
| limitN | Specifies a nominal sample size for the control limits. |
| limitsTable | Specifies the input data table that contains pre-calculated control limits. |
| medCentral | Specifies the method for estimating the process mean (central line), such as the average of subgroup means (AVGMEAN), average of subgroup medians (AVGMED), or median of subgroup medians (MEDMED). |
| no3SigmaCheck | When set to True, enables tests for special causes even when the control limits are not the default three-sigma limits. |
| outLimitsTable | Specifies the output data table to store the calculated control limits. |
| outputTables | Lists the names of results tables to save as CAS tables on the server. |
| pctlDef | Specifies the definition used to calculate percentiles for constructing the box-and-whisker plots. |
| primaryTests | Requests one or more tests for special causes (e.g., points outside control limits, trends, runs) for the primary control chart. |
| processName | Specifies the variable in the input data table that contains the names of processes to be analyzed. |
| processValue | Specifies the variable in the input data table that contains the process measurements to be analyzed. |
| sigmas | Specifies the width of the control limits as a multiple of the standard error of the subgroup summary statistic. |
| sMethod | Specifies the method for estimating the process standard deviation, such as using subgroup ranges or standard deviations. |
| specsTable | Specifies the data table containing specification limits, used to compute process capability indices. |
| subgroupName | Specifies the variable in the input data table that contains the names of subgroup variables. |
| subgroupValue | Specifies the variable in the input data table that contains the subgroup values (e.g., time, batch number). |
| table | Specifies the input data table containing the process data. |
| test2Run | Specifies the length of the pattern for Test 2 (points in a row on one side of the center line). |
| test3Run | Specifies the length of the pattern for Test 3 (points in a row steadily increasing or decreasing). |
| testNStd | When set to True, enables tests for special causes with varying subgroup sample sizes. |
| testOverlap | When set to True, applies tests for special causes to overlapping patterns of points. |
This example creates a CAS table named `mycas.PistonRings`. This table contains diameter measurements of piston rings. Each subgroup consists of five measurements taken on a specific day. The `Day` variable identifies the subgroup.
data mycas.PistonRings;
do Day = 1 to 20;
do i = 1 to 5;
Diameter = 74 + 0.02 * rannor(1234);
output;
end;
end;
run;This example generates a basic box chart for the `Diameter` measurements in the `mycas.PistonRings` table, with subgroups defined by the `Day` variable. The control limits are calculated based on the data.
| 1 | PROC CAS; |
| 2 | spc.boxChart / |
| 3 | TABLE={name='PistonRings'}, |
| 4 | processValue='Diameter', |
| 5 | subgroupValue='Day'; |
| 6 | RUN; |
This example creates a box chart and saves the control limits to a CAS table named `mycas.PistonLimits`. It also applies Test 1 (points outside control limits) and Test 3 (six points in a row steadily increasing or decreasing) to identify special causes of variation.
| 1 | PROC CAS; |
| 2 | spc.boxChart / |
| 3 | TABLE={name='PistonRings'}, |
| 4 | processValue='Diameter', |
| 5 | subgroupValue='Day', |
| 6 | outLimitsTable={name='PistonLimits', replace=true}, |
| 7 | primaryTests={test1=true, test3=true}; |
| 8 | RUN; |
This example first creates a control limits table (`mycas.PistonLimits`) and then uses it to create a box chart. It specifies that the chart should be based on subgroup medians (`controlStat='MEDIAN'`) and uses the pre-calculated limits from the `limitsTable` parameter.
| 1 | PROC CAS; |
| 2 | spc.boxChart / |
| 3 | TABLE={name='PistonRings'}, |
| 4 | processValue='Diameter', |
| 5 | subgroupValue='Day', |
| 6 | outLimitsTable={name='PistonLimits', replace=true}; |
| 7 | |
| 8 | spc.boxChart / |
| 9 | TABLE={name='PistonRings'}, |
| 10 | processValue='Diameter', |
| 11 | subgroupValue='Day', |
| 12 | limitsTable={name='PistonLimits'}, |
| 13 | controlStat='MEDIAN'; |
| 14 | RUN; |