
Manchmal sind Spezifikationsgrenzen und Kontrollgrenzen zu einschränkend und ich benötige einen anderen Grenzwerttyp, beispielsweise wenn ich mit Umweltüberwachungsdaten arbeite. In diesem Fall wäre es schön, eine doppelte Obergrenze für die Dinge zu haben, die ich überwache, eine Alarmgrenze, wenn Füllstände oder Zählungen hoch werden, und eine Aktionsgrenze, die eine Reihe von SOP-gesteuerten Aktionen auslöst.
Leider enthält JMP standardmäßig keine EM-Limits-Eigenschaft. Glücklicherweise lässt es sich mit ein paar kleinen Anpassungen sehr einfach hinzufügen und verwenden. Und mit viel Anpassung kann dieses anfängliche Konzept (unten) verwendet werden, um Werte in diese neue Spalteneigenschaft zu laden.
Das beigefügte Skript ahmt die JMP Spec Limits Manager-Plattform nach … sozusagen.
Der erste Dialog dient der Auswahl geeigneter Spalten. Es besteht auch die Möglichkeit, Quantilgrenzen zu definieren. (Eigentlich ist es standardmäßig aktiviert und lässt sich noch nicht ausschalten).

Nach der Auswahl der Spalten wird ein Tabellendialogfeld mit einer Zeile für jede ausgewählte Spalte und einer Spalte zum Bearbeiten des Aktionswerts und des Alarmgrenzwerts angezeigt. Zu den Optionen gehören das Senden der Dialogtabelle an eine Datentabelle (nützlich als Vorlage), das Senden der Werte in der Dialogtabelle an die Spalteneigenschaft EM Limits (die neue, die dieses Skript erstellt) und das Abrufen von Grenzwerten aus einer Datentabelle und deren direktes Senden die Spalteneigenschaft sowie die Dialogtabelle und schließlich eine Schaltfläche zum Erstellen eines Satzes von EM-Laufdiagrammen, die die Aktions- und Alarmgrenzen als horizontale Referenzlinien enthalten. Beachten Sie, dass die Diagrammschaltfläche nicht funktioniert, wenn keine Aktions- und Alarmgrenzen vorhanden sind.

Im beigefügten Skript werden die Referenzlinien in den Diagrammen durch Verweisen auf die Werte der Spalteneigenschaft EM Limits erstellt.
Da das Drehbuch etwas ausgefallen ist, finden Sie hier eine leicht vereinfachte Version. Hinweis: Raum 1 ist ein Spaltenname in meiner Datentabelle, Ihre Bezeichnung kann variieren.
em=:room1<< Get Property( "EM Limits" ); //get the column property values and put them in a list
Control Chart Builder(
Size( 900, 240 ),
Show Two Shewhart Charts( 0 ),
Test Excluded Subgroups( 1 ),
Show Control Panel( 0 ),
Show Limit Summaries( 0 ),
Variables( Subgroup( :date ), Y( :room 1 ) ),
Chart(
Points( Statistic( "Individual" ) ),
Limits(
Sigma( "Moving Range" ),
Show Center Line( 0 ),
Show Lower Limit( 0 ),
Show Upper Limit( 0 )
)
),
SendToReport(
Dispatch(
{},
"room 1",
ScaleBox,
{Add Ref Line( em[1], "Solid", "Black", "Action "||char(em[1]), 1 ), //em[1] is the first thing in the list
Add Ref Line( em[2], "Solid", "Black", "Alert "||char(em[2]), 1 )}. //em[2] is the second thing in the list<BR /> //"em" is a list, defined on the first line
)
)
)
Schauen Sie sich das an und lassen Sie mich wissen, ob es nützlich erscheint oder was Sie hinzufügen könnten. Dies ist nur ein erster Entwurf einer Konzeptlösung für ein ziemlich eng gefasstes Problem. Gleichzeitig könnte dieser Ansatz leicht verallgemeinert werden, um in vielen verschiedenen Kontexten zu funktionieren.
Du meinst neben den Grammatikfehlern?
Mir gefällt der Ansatz, die beiden Grenzwerte auf Quantilen zu basieren, aber hätte jemand vorher festgelegte Grenzwerte, die er stattdessen verwenden möchte?
Ich finde, es sieht toll aus! Ich würde es veröffentlichen und sehen, welche Art von Kommentaren Sie erhalten.