Erstellen eines Überlagerungsdiagramms basierend auf einer Auswahl der Optionsfelder<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich erstelle ein Skript, das ein Überlagerungsdiagramm mit einer Variablen (Preis) auf der X-Achse und zwei Variablen auf der Y-Achse erstellt. Mein Skript funktioniert gut, aber jetzt möchte ich ein Dialogfeld erstellen, in dem ein Benutzer auswählen kann, welche zwei Variablen auf der Y-Achse dargestellt werden sollen. Es gibt Set-Kombinationen, daher würde ich gerne eine Radio-Box mit den zulässigen Paaren verwenden. Leider kann ich dem Befehl für die Überlagerung nicht sagen, welche Variablen verwendet werden sollen. Der relevante Teil meines Codes ist:
| | Umrissfeld ("Zu analysierende Kurven auswählen"), rb = Optionsfeld ( {"Optimaler Preis", |
| | "Indifferenzpreispunkt", |
| | "Punkt der billigen Billigkeit", |
| | "Punkt der marginalen Kosten" |
| | } |
| ) | |
| | Gliederungsbox ("van Westendorf Graph") |
| | op = Datentabelle ("vw3") << Overlay-Diagramm ( |
| | X (: Preis), |
| | wählen Sie (rb << Get (), Y (: teuer,: Schnäppchen), Y (: zu teuer,: billig)), |
Ich würde zwar die select-Funktion verwenden, um die entsprechende Y-Anweisung zurückzugeben. Das geht aber nicht. Irgendwelche Vorschläge?
Vielen Dank,
Walt
Betreff: Erstellen eines Überlagerungsdiagramms basierend auf einer Auswahl der OptionsfelderDanke für diesen Vorschlag. Es sieht so aus, als würde es den Trick tun, also werde ich es bald versuchen.
Danke für all die Hilfe.
Walt
Betreff: Erstellen eines Überlagerungsdiagramms basierend auf einer Auswahl der OptionsfelderLeider müssen Sie einen dynamischen String erstellen, der die Befehle zum Erstellen Ihres Overlay-Diagramms enthält, und diesen String dann ausführen. Hier ist ein Beispiel, das evalinsert verwendet:
dt = öffnen ( "$ sample_data \ Car Physical Data.jmp" ) ;
Auswahlliste = { "Wendekreis, Verschiebung" . "PS, Tankgröße" } ;
col_list = { ": Wendekreis,: Verschiebung" . ": PS,: Tankgröße" } ;
Möglichkeit = 1 ;
nw = neues Fenster ( "Wählen Sie die zu analysierenden Kurven aus" . << modal .
rb = Radiobox ( Auswahlliste . Möglichkeit = rb << erhalten ; )
) ;
yaxis_label = Auswahlliste [ Möglichkeit ] ;
yaxis_cols = col_list [ Möglichkeit ] ;
overlay_expr = evalinsert ( "\ [Überlagerungsdiagramm (
X (: Gewicht),
Y (^ yaxis_cols ^),
SendToReport (
Dispatch ({}, "", AxisBox, {Achsenbeschriftung hinzufügen ("^ yaxis_label ^")}),
Versand ({}, "Y", TextEditBox, {Set Text ("^ yaxis_label ^")})
)
)] " ) ;
eval ( analysieren ( overlay_expr )) ;
Es mag kompliziert erscheinen, aber ich mache das immer, wenn JMP keine Variablen erkennen möchte.
Betreff: Erstellen eines Überlagerungsdiagramms basierend auf einer Auswahl der OptionsfelderDanke, aber wie sage ich Overlay Plot noch, welches Variablenpaar (wie in Y (: teuer,: Schnäppchen)) verwendet wird?
Walt
Betreff: Erstellen eines Überlagerungsdiagramms basierend auf einer Auswahl der OptionsfelderWalt,
Dies sollte den ersten Teil Ihres Codes korrigieren:
Auswahlliste = { "Optimaler Preis" .
"Indifferenzpreispunkt" .
"Punkt der geringen Billigkeit" .
"Punkt der marginalen Kosten"
} ;
nw = neues Fenster ( "Wählen Sie die zu analysierenden Kurven aus" . << modal .
rb = Radiobox ( Auswahlliste . Möglichkeit = rb << erhalten ; )
) ;
yaxis_label = Auswahlliste [ Möglichkeit ] ;