我有一個表,其中有 100 個設備,測試了 300 個測試項目。 我的規格列分別包含 LSL、USL。 我想繪製帶有規格限制的變異性屬性儀表圖。 請告訴我如何操作,或者如果該主題中有任何現有討論,請指出給我。謝謝。
樣本數據表:
| 設備 | 測試名稱 | 測量 | LSL | 超級激光實驗室 |
| 1 | 測試1 | 230 | 200 | 240 |
| 1 | 測試2 | 20 | 15 | 25 |
| 1 | 測試3 | 30 | 25 | 35 |
| 2 | 測試1 | 234 | 200 | 240 |
| 2 | 測試2 | 22 | 15 | 25 |
| 2 | 測試3 | 29 | 25 | 35 |
| 3 | 測試1 | 229 | 200 | 240 |
| 3 | 測試2 | 21 | 15 | 25 |
| 4 | 測試1 | 230 | 200 | 240 |
| 4 | 測試2 | 21 | 15 | 25 |

您想要的主要問題是您的數據不適合運行變異性屬性圖表平台。下面的腳本將包含您指定的列的數據表轉換為可用於生成您想要的圖表的數據表。
Names Default To Here( 1 );
dt = Current Data Table();
// Make a list of the Tests
Summarize( dt, testList = by( :Test Name ) );
dtSplit = dt << Split(
Split By( :Test Name ),
Split( :Measurement, :LSL, :USL ),
Group( :Device ),
Sort by Column Property
);
// Rename the test columns and set the Spec Limits
For( i = 2, i <= N Items( testList ) + 1, i++,
// Assign the new names
Column( dtSplit, i ) << set name( Substr( Column( dtSplit, i ) << get Name, 13 ) );
// Set the Spec Limits
Eval(
Substitute(
Expr(
Column( dtSplit, i ) << set property(
"Spec Limits ",
{LSL( __LSL__ ), USL( __USL__ ), Show Limits( 1 )}
)
),
Expr( __LSL__ ), Col Mean( As Column( dtSplit, i + N Items( (testList) ) ) ),
Expr( __USL__ ),
Col Mean( As Column( dtSplit, i + 2 * N Items( (testList) ) ) )
)
);
);
// Delete unwanted limits columns
dtSplit << delete columns( Index( N Items( testList ) + 2, N Cols( dtSplit ) ) );