"On the fly" Verteilungsbericht und Verwendung von VariablenZwei Fragen:
1 Wie erhalte ich den Sigma-Wert aus dem Histogramm, das ich gerade gezeichnet habe, um die Bin der Darstellung neu zu skalieren?
2 Wie füge ich jedem Testnamendiagramm Referenzzeilen (aus verschiedenen Tabellen) hinzu?
Vielen Dank im Voraus!
"STD" - ist der Standardwert aus der Statistiktabelle
"???" - ist ein Wert aus der Tabelle "Grenzen".
dt1 <SPAN class="token operator">=</SPAN> <SPAN class="token function">Open</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
<SPAN class="token punctuation">:</SPAN>result <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages"> Set Data Type</SPAN><SPAN class="token punctuation">(</SPAN> Numeric<SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Continuous"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
limits <SPAN class="token operator">=</SPAN> dt1 <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages"> Summary</SPAN><SPAN class="token punctuation">(</SPAN> Group<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>test_name <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token function">Mean</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token function">Eval</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"range_min"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token function">Mean</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token function">Eval</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"range_max"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
Ntests <SPAN class="token operator">=</SPAN> N Rows<SPAN class="token punctuation">(</SPAN> limits <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
vl <SPAN class="token operator">=</SPAN> <SPAN class="token function">V List Box</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token function">Text Box</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Spec Limits Script"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
dt1 <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages"> Distribution</SPAN><SPAN class="token punctuation">(</SPAN>
Continuous Distribution<SPAN class="token punctuation">(</SPAN> <SPAN class="token function">Column</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>result <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Horizontal Layout<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Vertical<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
By<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>test_name <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
SendToReport<SPAN class="token punctuation">(</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token string">"result"</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"1"</SPAN><SPAN class="token punctuation">,</SPAN>
ScaleBox<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Min<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">97.5173285198556</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Max<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">97.9576714801444</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Inc<SPAN class="token punctuation">(?STD?</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Minor Ticks<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Add Ref <SPAN class="token function">Line</SPAN><SPAN class="token punctuation">(</SPAN> limits<SPAN class="token punctuation">[</SPAN><SPAN class="token operator">?</SPAN><SPAN class="token operator">?</SPAN><SPAN class="token operator">?</SPAN><SPAN class="token punctuation">,</SPAN><SPAN class="token number">3</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Solid"</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Black"</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">""</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Add Ref <SPAN class="token function">Line</SPAN><SPAN class="token punctuation">(</SPAN> limits<SPAN class="token punctuation">[</SPAN><SPAN class="token operator">?</SPAN><SPAN class="token operator">?</SPAN><SPAN class="token operator">?</SPAN><SPAN class="token punctuation">,</SPAN><SPAN class="token number">4</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Solid"</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Black"</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">""</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
Re: "On-the-fly" Verteilungsbericht und Verwendung von VariablenDies scheint die gleiche Frage zu sein wie die, die jetzt in a behandelt wird paralleler Faden.
Re: "On-the-fly" Verteilungsbericht und Verwendung von VariablenBitte siehe angehängte Datei.
Verteilung nach "test_name"
füge Zeile nach range_max & range_min hinzu
bin size by std.
Vielen Dank!
Re: "On-the-fly" Verteilungsbericht und Verwendung von VariablenOK. Es scheint, als hätten Sie dann zwei "Probleme"; Eine ist, dass die Variablen 'ref1Val', 'ref2Val' und 'IncVal' a priori zugewiesen werden, und die andere ist, dass Sie eine 'By'-Variable verwenden müssen. Beide sind jedoch leicht zu überwinden.
Die genannten Werte könnten von anderen JSL berechnet worden sein oder nachgeschlagen werden (anstelle von Werten durch Zuweisungen wie oben).
Wenn Sie eine 'By'-Variable verwenden, können die Details ein wenig davon abhängen, ob Sie die Anzahl der Gruppen im Voraus kennen oder nicht. Die Verwendung von 'SubstituteInto ()' wird jedoch wahrscheinlich dieselbe sein. Einige Beispieldaten und -werte können sehr hilfreich sein, wenn Sie weitere Hilfe benötigen oder wünschen.
Re: "On-the-fly" Verteilungsbericht und Verwendung von VariablenDanke aber das ist nicht das Problem.
Mein Problem ist, dass ich gerne "By (: test_name)" ausführen würde, so dass ich viele verschiedene Diagramme bekomme. Ich möchte jeden von ihnen durch die Statistiken jeder Distribution ändern.
In Ihrem Beispiel haben Sie einen Prioritätswert festgelegt, und nur für einen Typ / test_name.
Vielen DankRe: "On-the-fly" Verteilungsbericht und Verwendung von VariablenInformationen hierzu finden Sie in den Abschnitten "Hilfe> Bücher> Skripthandbuch" und "Hilfe> Skriptindex".
Das zeigt die Idee:
NamesDefaultToHere(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
// Auto-generated axis
dist1 = dt << Distribution( Continuous Distribution( Column( :height ) ), Histograms Only );
// Assign some values used to update the histogram axis
ref1Val = 55;
ref2Val = 65;
incVal = 10;
// Expression to make distribution with user axis
makeDist =
Expr(
dist2 = dt << Distribution(
Continuous Distribution( Column( :height ) ), Histograms Only,
SendToReport(
Dispatch(
{"height"},
"1",
ScaleBox,
{
Inc(IncValTBD),
Add Ref Line( ref1ValTBD, "Solid", "Red", "", 1 ),
Add Ref Line( ref2ValTBD, "Solid", "Red", "", 1 )
}
),
Dispatch(
{"height"},
"Distrib Histogram",
FrameBox,
{
Grid Line Order( 1 ),
Reference Line Order( 3 )
}
)
)
)
);
// Update the expression with by baking in the chosen values
SubstituteInto(
makeDist,
Expr(IncValTBD), IncVal,
Expr(ref1ValTBD), ref1Val,
Expr(ref2ValTBD), ref2Val
);
// Remake the distribution
makeDist;