Achse oder Legende per Knopfdruck wechseln<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich habe ein JSL-Skript, das aus mehreren Schaltflächen besteht. Jede Schaltfläche öffnet ein neues Fenster mit einem bivariaten Zeittrend mit einer eindeutigen Zeit und Legende aus meinem Datensatz, dh
WERT ZEIT@A LEGENDE@A ZEIT@B LEGENDE@B
-------------------------------------------------- ------------------------------------------------
10 1 A 2 B
40 2 B 3 C
50 3 A 4 C
30 4 B 5 B
Button #1 öffnet Value (Y) by Time1 (X), mit Legend = Legend1, Button #2 öffnet Value (Y) by Time2 (X), mit Legend = Legend2.
In meinem aktuellen Datensatz habe ich viel mehr als 2 Zeit-/Legendenpaare, die ich überprüfen muss - ich wollte wissen, ob es in JSL eine Möglichkeit gibt, die x-Achse/Legende zu ändern auf demselben Grundstück mit einem Klick auf eine Schaltfläche, anstatt jedes Mal ein neues Fenster zu öffnen?
Ich habe folgendes versucht, nur um die Achse zu ändern, aber es funktioniert nicht. Ich habe noch nicht einmal versucht, die Legende zu ändern ... Danke im Voraus!
dt = open("data.jmp");
SpalteA = Spalte("ZEIT@A");
SpalteB = Spalte("ZEIT@B");
nw = neues Fenster ("NewWin",
Listenfeld (
bv = Bivariat (
Y( :Name( "WERT" ) ),
X( ColA )
),
Schaltflächenfeld (
"Achse wechseln",
bv << X( ColB )
)
);
);
Betreff: Achse oder Legende per Knopfdruck ändernSuper - es hat geklappt! Basierend darauf habe ich es auch geschafft, der Funktion eine Legendeneingabe hinzuzufügen, also schaltet sie das auch um
Danke vielmals!
Betreff: Achse oder Legende per Knopfdruck ändernOder nutzen Sie alternativ die integrierte Spaltenumschalterfunktion:
dt = Offen ( "$SAMPLE_DATA/Große Klasse.jmp" ) ;
nw = Neues Fenster ( "NewWin" ,
hlb = H Listenfeld (
bv = Bivariat ( Y ( : Gewicht ) , X ( : Höhe )) ;
cs = bv << Spaltenumschalter ( : Höhe , { : Höhe , : das Alter }) ;
Button-Box ( "Achse wechseln" , cs << nächste ) ; // Schaltfläche funktioniert, wird aber nicht benötigt
)
) ;
Betreff: Achse oder Legende per Knopfdruck ändernIch bin mir nicht sicher, ob es möglich ist, nur die Achse zu ändern. Eine Möglichkeit, das Öffnen eines neuen Fensters zu vermeiden, besteht jedoch darin, einfach die gesamte Darstellung zu löschen und die aktualisierte Darstellung an ihrer Stelle hinzuzufügen.
Zum Beispiel:
dt = Offen ( "$SAMPLE_DATA/Große Klasse.jmp" ) ;
Cola = Spalte ( "Höhe" ) ;
ColB = Spalte ( "das Alter" ) ;
make_bv = Funktion ({ Kol } ,
bv = Bivariat ( Y ( : Name ( "Gewicht" )) , X ( Kol ))
) ;
nw = Neues Fenster ( "NewWin" ,
hlb = H Listenfeld (
make_bv ( Cola ) ;
Button-Box ( "Achse wechseln" ,
bv << löschen ; // Plot löschen
hlb << voranstellen ( make_bv ( ColB )) ; // aktualisierten Plot hinzufügen
) ;
)
) ;