Bereiche im Graph Builder zulassenHi,
Ist es beim Ändern der X-Achseneinstellungen in einem Diagramm möglich, die Allow Ranges zu verwenden und Werte basierend auf dem Datensatz (in einem Skript) auszuwählen? Oder geht das nur manuell?
Ich versuche, ein Diagramm mit farbcodierten Bereichen (die aus dem Datensatz ausgewählt werden) wie ein Regeldiagramm zu erstellen, jedoch auf der x-Achse.
Br Julie
Betreff: Bereiche im Graph Builder zulassenUnten ist der Code, den ich verwendet habe, um den Bereichswert hinzuzufügen
names default to here(1);
dt=open("$SAMPLE_DATA/semiconductor capability.jmp");
gb = Graph Builder(
Size( 534, 456 ),
Show Control Panel( 0 ),
Variables( X( :PNP1 ), Y( :NPN1 ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
Eval(
Substitute(
Expr(
Report( gb )[AxisBox( 1 )] << Add Ref Line( {__LSL__, __USL__}, "Solid", "Black", "", 1, 0.25 )
),
Expr( __LSL__ ), (dt:PNP1 << get property( "spec limits" ))["LSL"],
Expr( __USL__ ), (dt:PNP1 << get property( "spec limits" ))["USL"]
)
);Betreff: Bereiche im Graph Builder zulassenHi @JulieSAppel ,
Sie sollten in der Lage sein, die tatsächliche Zahl, z. B. 119,84, durch etwas wie Eval(Col Min(:Column)) und das Maximum durch etwas wie Eval(Col Max(:Column2)) zu ersetzen.
Ich habe einen schnellen Test mit einer meiner Datentabellen durchgeführt, und das funktioniert. Wenn die Spalte "untere Grenze" ist, müssen Sie möglicherweise so etwas tun
Eval(Spalte Min(:Name("untere Grenze"))). Möglicherweise müssen Sie die Häkchen im JSL-Code anpassen, um ein ansprechenderes Diagramm zu erhalten, aber ich denke, ein Ansatz wie dieser könnte funktionieren.
Ich bin sicher @txnelson sollte in der Lage sein zu bestätigen, ob mein Ansatz gültig ist.
Hoffe das hilft!,
DS
Betreff: Bereiche im Graph Builder zulassenTatsächlich unterscheiden sich meine Bereiche von Datensatz zu Datensatz, daher versuche ich herauszufinden, wie die Bereiche im Diagramm basierend auf Grenzwerten im Datensatz und nicht auf einem Satz von Bereichen hinzugefügt werden können. Also im Grunde in dem Code, wo es heißt:
<SPAN class="token function">report</SPAN><SPAN class="token punctuation">(</SPAN>gb<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">[</SPAN>AxisBox<SPAN class="token punctuation">(</SPAN><SPAN class="token number">1</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages">Add Ref Line</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token number">119.84</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">130</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 number">0.25</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>Können Sie anstelle von tatsächlichen Zahlen Verweise auf bestimmte Datenpunkte haben (z. B.: dt (: untere Grenze, : obere Grenze) anstelle von<SPAN class="token number"> 119,84</SPAN><SPAN class="token punctuation"> ,</SPAN><SPAN class="token number"> 130</SPAN> )?
Betreff: Bereiche im Graph Builder zulassenDer einfachste Weg, um herauszufinden, welche JSL eine solche Option wie "Allow Ranges" hinzufügen soll, besteht darin, das Diagramm interaktiv auszuführen, die gewünschte Option (Allow Ranges) hinzuzufügen und dann das Skript aus dem Diagramm zu speichern.Hier ist ein Diagramm mit Allow Ranges

und hier ist das aus dem Diagramm generierte Skript
Graph Builder(
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"weight",
ScaleBox,
{Add Ref Line( {119.84, 130}, "Solid", "Black", "", 1, 0.25 )}
)
)
);
Und hier ist eine Modifikation dieses Skripts in eine Form, die programmtechnisch einfacher zu handhaben ist
gb = Graph Builder(
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) ));
report(gb)[AxisBox(1)]<<ADD ref="" line=""></ADD>