Hallo,
Gibt es eine Möglichkeit, die beste Anpassung für einen bestimmten Parameter zu ermitteln, Fähigkeitsanalysetabellen nur für diese Modellanpassung zu erstellen und dann die Anzeigefelder nur für die beste Anpassung in einem neuen Fenster neu zu organisieren (siehe Abbildung unten)? Kann ich die Funktionen auch beibehalten?
Folgendes habe ich versucht: Es funktioniert bis zu einem gewissen Grad ...
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Semiconductor Capability.jmp" );
dis = Distribution(
Continuous Distribution(
Column( :NPN1 ),
Quantiles( 0 ),
Vertical( 0 ),
Outlier Box Plot( 1 ),
Fit Normal( Show Fit( 0 ), Process Capability( LSL( 104.41 ), Target( . ), USL( 131.89 ), Show as Graph Reference Lines ) ),
Fit Johnson( Show Fit( 0 ) ),
Fit Cauchy( Show Fit( 0 ) ),
Fit Student's t( Show Fit( 0 ) ),
Fit SHASH( Show Fit( 0 ) ),
Fit Normal 2 Mixture( Show Fit( 0 ) ),
Fit Normal 3 Mixture(
Process Capability( LSL( 104.41 ), Target( . ), USL( 131.89 ), Show as Graph Reference Lines, Show Within Capability( 0 ) )
),
Customize Summary Statistics( Std Err Mean( 0 ), Upper Mean Confidence Interval( 0 ), Lower Mean Confidence Interval( 0 ), N Missing( 0 ) )
)
);
New Window( "",
Show Menu( 0 ),
show toolbars( 0 ),
H List Box(
Panel Box( ,
Report( dis )["NPN1", List Box( 3 )]
),
V List Box(
Spacer Box( size( 0, 10 ) ),
Report( dis )["NPN1", "Summary Statistics"],
Spacer Box( size( 0, 10 ) ),
Report( dis )["NPN1", "Fitted Normal 3 Mixture Distribution", "Process Capability", "NPN1(Mixture of 3 Normals) Capability",
"Overall Sigma Capability"],
Spacer Box( size( 0, 10 ) ),
Report( dis )["NPN1", "Fitted Normal 3 Mixture Distribution", "Process Capability", "NPN1(Mixture of 3 Normals) Capability",
"Nonconformance"]
)
),
Panel Box( ,
Table Box(
Report( dis )["NPN1", "Compare Distributions"]
)
)
);
dis << close window;
Sie können die „beste Anpassung“ erhalten, indem Sie die Nachricht „Alle an die Verteilung anpassen“ senden und die erste Zeile aus dem Tabellenfeld abrufen. Dies sollte jedoch nur für explorative Analysen verwendet werden (gute Diskussion hier ). Skripterstellung – Wie wählt man die Verteilung mit der besten Anpassung aus und sammelt Fähigkeitsparameter? ). Sie können diese dann entweder in einem assoziativen Array sammeln, wobei der Schlüssel der Spaltenname und die Werteverteilung sind, oder diese auf die Spalteneigenschaft „Verteilung“ festlegen. Erstellen Sie abschließend Ihre endgültigen Plots mit der Plattform, die Sie verwenden möchten.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
get_best_dist = function({dt, colname}, {Default Local},
dist = dt << Distribution(
Continuous Distribution(
Column(Eval(colname)),
Process Capability(0)
),
Invisible,
Histograms Only
);
dist << Fit All;
scb = Report(dist)[Outline Box("Compare Distributions"), Table Box(1), StringColBox(1)];
bestdist = scb[1];
dist << close window;
return(bestdist);
);
aa_dist = Associative Array();
colrefs = dt << Get Column Group("Processes");
For Each({colref}, colrefs,
Try(
colname = colref << get name;
curdist = get_best_dist(dt, colname);
aa_dist[colname] = curdist;
Eval(EvalExpr(Column(dt, colname) << Set Property("Distribution", Expr(curdist))));
,
show(colref);
);
);