創建具有每個階段的歷史限制的相位控製圖表在我的博文中“ 在控製圖生成器中使用固定/基線(歷史)控制限制的4種方法 “,我討論了四種不同的輸入歷史控制限制的方法。在這篇特別的博客文章中,我將專門討論在涉及相位變量時設置控製圖的歷史限制。
列屬性,設置控制限制和排除的行狀態方法在此方案中不起作用,因為JMP僅允許使用這些方法為整個圖表定義一組控制限制。對於每個階段需要不同限制的相位控製圖表的唯一方法是獲取限制方法。這篇博文詳細介紹了相位控製圖的獲取限制方法。
例
在我的博文中“ 使用控製圖生成器生成控制限制 ,“我介紹了一個印刷過程。出於本博文的目的,印刷公司希望減少打破紙和書脊之間的粘合所需的力的可變性。他們想為三個不同的工廠中的每一個做這件事。基於設計的實驗確定新的過程。數據從新流程收集。目標是在控製圖上繪製具有舊過程歷史限制的新數據。這樣,印刷公司可以將新工藝與舊工藝限制進行比較。
每個工廠都有不同的機器,不同的操作員,也位於不同的國家;因此,每個工廠都有一套獨特的歷史限制和信息。歷史控制限制是使用舊數據計算的(在流程變更之前)。該相位控製圖如下所示。
Figure 1: Phase control chart with historical dataFigure 1: Phase control chart with historical dataFigure 1: Phase control chart with historical data圖1:包含歷史數據的相位控製圖
限製表
要使用獲取限制方法,我們必須有一個限制數據表。此限製表中需要三列:
- _LimitsKey列,用於定義統計信息。
- 與流程變量同名的列,其中包含_LimitsKey列中列出的統計信息的值。
- 與相變量同名的列,其中包含有關統計信息適用於哪個階段的標識信息。
如果單擊控製圖生成器旁邊的紅色三角形並選擇保存限制 - >在新表中,JMP 13.1及更高版本將為您創建此表。對於JMP 13.1之前的軟件版本,您可以從Control Chart Builder報告的Limit Summaries表中輕鬆創建此表。 要創建此表,請右鍵單擊圖1中所示的“強制限制摘要”表,然後選擇“生成數據表”。
Figure 2: Force Limits Summary tableFigure 2: Force Limits Summary tableFigure 2: Force Limits Summary table圖2:強制限制匯總表
您需要執行一些數據表操作才能以正確的格式獲取此表。 選擇Tables-> Stack。選擇LCL,Avg和UCL,然後單擊Stack Columns。在“輸出表名稱”旁邊的框中,鍵入“強制限制”。將堆積數據列名稱更改為強制。
Figure 3: Stack dialogFigure 3: Stack dialogFigure 3: Stack dialog圖3:堆棧對話框
單擊確定。我們需要創建_LimitsKey列。JMP正在尋找_LCL,_Avg和_UCL而不是LCL,Avg和UCL。對於色散圖,JMP正在尋找_LCLR,_AvgR和_UCLR。 我們可以使用公式來做到這一點。在新創建的階段限製表中,選擇Cols-> New Column。 將列命名為_LimitsKey。單擊列屬性,然後選擇公式。輸入以下公式。
Figure 4: Formula for the _LimitsKey columnFigure 4: Formula for the _LimitsKey columnFigure 4: Formula for the _LimitsKey column圖4:_LimitsKey列的公式
單擊確定。
Figure 5: New Column dialogFigure 5: New Column dialogFigure 5: New Column dialog圖5:New Column對話框
單擊確定。您的新限製表應如下所示。
Figure 6: Force limits data tableFigure 6: Force limits data tableFigure 6: Force limits data table圖6:強制限制數據表
具有歷史限制的相位控製圖
印刷公司希望能夠減少打破頁面與書脊之間聯繫所需的力的可變性,從而改變了這一過程。我們有一個新的數據表,其中包含在進行此更改後記錄的70行數據。我們希望在新圖上使用歷史限制,以便我們可以看到新數據(在流程更改之後)與我們的歷史信息(流程更改之前)之間的比較。
Figure 7: Data from new processFigure 7: Data from new processFigure 7: Data from new process圖7:來自新流程的數據
要創建控製圖,請轉至分析 - >質量和流程 - >控製圖生成器。將站點拖動到階段角色。將Force強制拖動到Y角色。拖動運行到x軸。
Figure 8: Force control chart with new dataFigure 8: Force control chart with new dataFigure 8: Force control chart with new data圖8:帶有新數據的力控製圖表
要將歷史限制應用於此圖表,請單擊“控製圖表生成器”旁邊的紅色三角形,然後選擇“獲取限制”。選擇您在圖6中創建的Force Limits.jmp表。
Figure 9: Force control chart with historical limitsFigure 9: Force control chart with historical limitsFigure 9: Force control chart with historical limits圖9:具有歷史限制的力控製圖表
結論
對於位置或色散圖表,沒有一個點超出控制限值。目標是減少變異性。觀察移動範圍圖表,我們發現大多數點都低於平均線。特別是對於站點1和站點2,很明顯,打破頁面和書脊之間的連接所需的力的可變性已經降低。站點3不如站點1和站點2明顯。似乎可變性可能已經降低了一些。但是,目前還不清楚這是否是一個重大變化。印刷工藝的改進成功地減少了可變性。
參考
JMP軟件:統計過程控制課程筆記
Phase control chart with historical limitsPhase control chart with historical limitsPhase control chart with historical limits具有歷史限制的相位控製圖
了解如何在涉及相位變量時設置控製圖的歷史限制。
Re:創建一個相位控製圖表,其中包含每個階段的歷史限制不,我不知道更優雅的方式。 遺憾的是,Get Limits命令僅使用以前保存的數據表。
Re:創建一個相位控製圖表,其中包含每個階段的歷史限制好。謝謝。我將在腳本中以這種方式執行此操作。這意味著,我將循環遍歷某些表T1中的所有“by”類別,並且每次迭代都將限製表L1從文件T1保存到某個臨時目錄。然後我將執行控製圖命令並刪除文件L1。是否有一些更優雅的方式來運行所有這些,而不是每次迭代都保存限製表?Re:創建一個相位控製圖表,其中包含每個階段的歷史限制是的,你可以這樣做。 對於by變量的每個級別,您都需要一個單獨的表。 每個表格看起來與博客文章中的相同。
Re:創建一個相位控製圖表,其中包含每個階段的歷史限制您好Tonya,非常有幫助,感謝您的博客。是否可以使用“按”某些類別和“獲取限制”創建多個控製圖表,每個類別的階段具有不同的限制?如果是,Limits表必須如何?回复:創建具有每個階段的歷史限制的階段控製圖大家好-我很高興告訴您,在JMP 15.0和更高版本中,“獲取限制”命令現在將接受以前保存的表或當前打開的數據表。
回复:創建具有每個階段的歷史限制的階段控製圖我認為這是一項很棒的功能,可以讓我90%地享受與某物相伴的地方。 我有一個正在監視數百個控製圖的系統。 限制隨著基準標準的變化而變化。 這將使我可以將基準標准設置為階段。
現在,這就是挑戰。 我的希望是使用本地數據過濾器在幾百個控製圖之間切換。 如果我在圖形生成器中進行操作,這非常有用,但是我看不到可以同時過濾限制和數據的方法。
有人看到我們可以實現這一目標的任何簡單方法嗎?
回复:創建具有每個階段的歷史限制的階段控製圖 @Evan_Morris 我不確定我了解您的數據設置或您要完成的工作。 如果您有數百個控製圖,則過程篩選平台可能會更適合您的需求。 我建議您看一下以下博客文章,根據分組列而不同的過程規範限制 。如果您看一下此博客文章中的第4個屏幕截圖,您將看到可以輸入中心線和sigma作為控制限制。 該平台不需要規格限制。
回复:創建具有每個階段的歷史限制的階段控製圖通雅
我正在監視數百個製造過程,每個過程都有其自身的含義,並會不時發生變化。 我正在使用相圖來管理這種平均變化。 我很幸運使用普通圖形結構中的本地數據過濾器來快速瀏覽100多個數據集,但是如果這樣做,我將無法引入控制限制。
就是說,您對過程篩選的觀點非常出色。 我認為這是我應該考慮的路線。
非常感謝
埃文
主題:創建帶有每個階段歷史限制的階段控製圖你好,
我在討論組中的最後一個問題是構建一個“儀表板過濾器動態 X 軸但控製圖的固定限制”。 這次我嘗試通過對我的控製圖實施一個階段來增強我的儀表板,因為我有三台機器和四個我喜歡在儀表板中看到的參數。 我的計劃是在這里關注您的文章,但我遇到了一些問題。 我先說明一下我的想法。 我有一個 excel 表,其中包含四個列格式的參數,一列定義了生產在哪台機器上運行。 我將表格導入 jmp,運行我的 4 個腳本,為每個參數製作一個控製圖,將機器列定義為相位。 然後我通過紅色三角形將限制保存到 4 個表 (1) 中。 這樣我就可以為這種情況保存限制,直到新數據到達。 一旦我的原始 excel 表有新數據,我就會從 excel 更新我的 jmp 表。 我為 4 個參數運行我的腳本,並通過紅色三角形從我之前保存到這 4 個控製圖中的表格中獲取我的限制。 然後我為包含所有四個控製圖的儀表板運行我的腳本。
所以現在我可以看到在參數或機器方面是否有任何變化。 目前對我來說缺少的是我不知道如何將 (1) 中的表重命名為“限制參數 1”之類的名稱,這將使我更容易將其全部放入腳本中。 我從 (1) 中得到的表不包括它們是如何構建的腳本。
我可以使用您描述的獲取限製表並對其進行轉換的方式,但我沒有成功,我認為必須有一個新命令,因為您的文章來自 2017 年並且使用 JMP 13,並且紅色小三角菜單後面的命令必須在某處。 因此,使用該命令,我想我可以創建我的腳本。
此致,
簡
回复:創建具有每個階段歷史限制的階段控製圖@jan_kreuzmann我對您尋求幫助的內容感到困惑。 聽起來您仍在使用 Control Chart Builder 而不是 Process Screening。 聽起來您也想知道如何重命名限製表。 您可以使用 set name 命令執行此操作。 如果我有誤解,請提供更多信息。 一些示例代碼和您想要的圖像可能會有所幫助。
dt=Open("$SAMPLE_DATA/Quality Control/Coating.jmp");
obj=dt<<CONTROL chart="" builder=""></CONTROL>主題:創建帶有每個階段歷史限制的階段控製圖@tonya_mauldin您發送的腳本運行良好。 謝謝。
由於我不熟悉過程篩選,我試圖在我的控製圖中實施階段(我過去在“儀表板過濾器動態 X 軸但控製圖的固定限制”一文中設置的那些),然後我用它來設置儀表板。
我得到了這樣的票價:
// get the open table as current one
dt = current data table();
// make control charts for all parameters with machine as phase and save the limits into data table
obj=dt<Size( 528, 464 ),
Show Two Shewhart Charts( 0 ),
Test Excluded Subgroups( 0 ),
Show Control Panel( 0 ),
Include Missing Categories( 0 ),
Show Excluded Region( 0 ),
Show Limit Summaries( 0 ),
Variables( Subgroup( :Lot Nr. ), Y( :Parameter 1 ), Phase( :Machine ) ),
Chart(
Points( Statistic( "Individual" ) ),
Limits( Sigma( "Moving Range" ), Zones( 1 ), Shade Zones( 1 ) )
),
SendToReport(
Dispatch(
{},
"Control Chart Builder",
FrameBox,
{DispatchSeg(
TextSeg( 1 ),
{Line Color( "None" ), Fill Color( "None" )}
), DispatchSeg(
TextSeg( 2 ),
{Line Color( "None" ), Fill Color( "None" )}
), DispatchSeg(
TextSeg( 3 ),
{Line Color( "None" ), Fill Color( "None" )}
)}
)
)
);
dtLimits=obj<dtLimits<<Set Name("Limits Parameter 1");
我會為我的所有參數執行此操作。
然後我在想:
使用控製圖我設置了一個儀表板,
然後更新我的 jmp 表。
dt1 = Current Data Table();
n_rows = N Rows();
dt2 = Open(
"//Dashoardtest.xlsx",
Worksheets( "Tabelle1" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 0 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);
dt2 << DeleteRows( Index( 1, n_rows ) );
dt1 << Concatenate( dt2, Append to first table );
Close( dt2 );
Names Default To Here( 1 );
dt = Current Data Table();
這將自動更新我的儀表板,進而計算新的限制。
在這個儀表板中,我現在遇到了與之前相同的問題,因為將根據我選擇的批號計算限制。 上次您使用命令幫助將限制保存到列屬性中,但這僅在沒有階段的情況下才有效。

我仍然可以使用紅色小三角菜單手動將表格中的舊限制輸入到我打開的儀表板的控製圖中,但我還沒有看到使用腳本來實現的可能性。
換句話說,如何將第一個控製圖表中的限制輸入到我現在更新的儀表板中?
無論我選擇什麼批號,我怎樣才能讓儀表板保持限制? 就像我在另一個儀表板中運行它一樣:

在這裡你可以看到我只挑選了一批,但仍然顯示了所有限制。
也許你知道我能做什麼。
此致
簡
回复:創建具有每個階段歷史限制的階段控製圖@jan_kreuzmann您必須使用博客文章中所示的獲取限制命令。 您可以在 Object Scripting Index 中找到如何編寫腳本的示例。
dt = Open(<BR />"$SAMPLE_DATA/Quality Control/Coating.jmp"<BR />);<BR />obj = dt <<<BR />Control Chart Builder(<BR />Variables( Subgroup( :Sample ), Y( :Weight ) ),<BR />Chart(<BR />Position( 1 ),<BR />Points( Statistic( "Average" ) ),<BR />Limits( Sigma( "Range" ) )<BR />),<BR />Chart(<BR />Position( 2 ),<BR />Points( Statistic( "Range" ) ),<BR />Limits( Sigma( "Range" ) )<BR />),<BR />Get Limits(<BR />"$SAMPLE_DATA/Quality Control/CoatingLimits.jmp"<BR />)<BR />);
由於您將表命名為 dtLimits,因此您可以使用
Get Limits(dtLimits)
回复:創建具有每個階段歷史限制的階段控製圖@jan_kreuzmann不確定我理解正確,但也許這種方式有助於獲得包括階段的限製表:
obj = Open( "$SAMPLE_DATA/Cities.jmp" ) << Control Chart Builder(
Test Excluded Subgroups( 1 ),
Variables( Y( :OZONE ), Phase( :Region ) )
);
obj << Save Limits ( in New Table);
這是(其中一件事)你需要的嗎?