Radiobox mit bivariaten Plot integrierenHi
Verwenden des folgenden Skripts zur dynamischen Steuerung des bivariaten Diagramms nach Wahl des Benutzers.
Der Benutzer wählt den „Produkt“-Typ aus einer Liste, die in einem Optionsfeld angezeigt wird, und das ausgewählte Produkt wird dann als „Nach“-Argument im bivariaten Diagramm verwendet.
Ich habe es geschafft, das neue Fenster mit Radiobox und Plot zu erstellen, aber es ist nicht interaktiv.
Hoffe ihr könnt helfen!

summarize(unique_values=by("PRODUCT@STARTS"));
my_1_script = expr(
Bivariate(
Y(:Name(
"SPCRAW@WAFER@MEAN@ONTFE.HM_FRAC_LOT_2PT_DYN.74.DER@ML=2PT_DYN_A;PP=2PT_MEAN@188426"
)
),
X(:Name( "END_TIME@CHAMBER@NTSC@Process-1@ETCHER@163096" ) ),
By( cat<< Get Selected ),
GroupBy( :group ),
Fit Spline( 0.1, Standardized, {Line Width( 2 )} ),
UnGroup;
Fit Where(:group == "D1D",
Fit Spline(0.1,Standardized,{Line Color( "Black" ), Line Width( 4 )}));
SendToReport(
Dispatch(
{},
"Bivar Plot",
FrameBox,
{Frame Size( 493, 277 ),
Row Legend(
chamber,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
)
);
my_win = New Window( "DEPOP FRAC - Bivariate",
HListBox(
LineUpBox(ncol(1),
PanelBox("Product",
Outline Box( "Select Product", cat = Radio Box( unique_values, width( 200 ), gb << delete; my_win << append( gb = my_1_script ) ))
), //end PanelBox
gb = my_1_script)))DatentabelleGrafikSkriptingRe: Radiobox mit bivariatem Plot integrierenIch denke, das wird dir das geben, was du brauchst
Names Default To Here( 1 );
Summarize( unique_values = by( "PRODUCT@STARTS" ) );
my_1_script = Expr(
Bivariate(
Y(
:Name(
"SPCRAW@WAFER@MEAN@ONTFE.HM_FRAC_LOT_2PT_DYN.74.DER@ML=2PT_DYN_A;PP=2PT_MEAN@188426"
)
),
X( :Name( "END_TIME@CHAMBER@NTSC@Process-1@ETCHER@163096" ) ),
By( As Column( catSelected ) ),
GroupBy( :group ),
Fit Spline( 0.1, Standardized, {Line Width( 2 )} ),
UnGroup;
Fit Where(
:group == "D1D",
Fit Spline( 0.1, Standardized, {Line Color( "Black" ), Line Width( 4 )} )
);
SendToReport(
Dispatch(
{},
"Bivar Plot",
FrameBox,
{Frame Size( 493, 277 ), Row Legend(
chamber,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
);
)
);
my_win = New Window( "DEPOP FRAC - Bivariate",
H List Box(
Lineup Box( N Col( 1 ),
Panel Box( "Product",
Outline Box( "Select Product",
cat = Radio Box(
unique_values),
button box("OK",
catSelected = cat << get selected;
my_win << close window;
my_1_script;
)
)
) //end PanelBox
)
)
);
Re: Radiobox mit bivariatem Plot integrierenVielen Dank! Funktioniert einwandfrei.
Können Sie mir empfehlen, wo ich mehr über diese Art von JSL-Skripting erfahren kann?
Re: Radiobox mit bivariatem Plot integrierenSie können mir eine Nachricht senden – ich bin der Ersteller des DMFE-Addins
Re: Radiobox mit bivariatem Plot integrierenHallo Danke fürs Helfen!
Ich habe Ihr vorgeschlagenes Skript ausgeführt, aber ich habe eine Fehlermeldung erhalten:

Diese Fehlermeldung erscheint, wenn ich auf verschiedene Optionen im Radiofeld klicke. Ich habe verschiedene Optionen ausprobiert, aber alle führten zu dieser Fehlermeldung.
Wissen Sie, wie es behoben werden kann?
Vielen Dank!!
Re: Radiobox mit bivariatem Plot integrierenVielleicht möchten Sie Ihre Beispiele kuratieren und keine unternehmensspezifischen Namen verwenden. Es hilft auch, die Beispieldatentabellen zu verwenden, die JMP bereitstellt, um einfacher mit den Leuten hier zu arbeiten.
Davon abgesehen ist hier ein kurzes Beispiel, das ich zusammengestellt habe, das funktional das tut, was Sie verlangen.Beachten Sie, dass die zusätzlichen Bits mit dem Namensraum self und dergleichen für die Bereichssteuerung da sind.Wenn Sie viel mit interaktiven UIs wie dieser machen, empfehle ich Ihnen, eine Bibliothek zu erstellen, die den Umfang Ihrer Skripte mit Metaprogrammierung automatisch steuern kann.Es ist _viel_ einfacher und intuitiver.
/* interactive graph */
self = New Namespace();
self:table = Current Data Table();
self:by group column = "PRODUCT@STARTS";
self:response = "RESPONSE_NAME";
self:time = "TIME_COLUMN";
self:group = "group";
self:items = Associative Array( Column( self:table, self:by group column ) ) << Get Keys;
Eval( Eval Expr(
self:window = New Window( "Graph Example",
<<ON close=""></ON>