<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Je crée un script qui crée un tracé de superposition avec une variable (prix) sur l'axe des x et deux variables sur l'axe des y. Mon script fonctionne bien, mais je souhaite maintenant créer une boîte de dialogue dans laquelle un utilisateur peut sélectionner les deux variables à tracer sur l'axe des y. Il existe des combinaisons définies, donc je voudrais utiliser une Radio Box avec les paires acceptables répertoriées. Mais malheureusement, je ne peux pas dire à la commande Surimpression quelles variables utiliser. La partie pertinente de mon code est:
| | Contour Box ("Sélectionnez les courbes à analyser", rb = Radio Box ( {"Prix optimal", |
| | "Indifférence Price Point", |
| | "Point de bon marché marginal", |
| | "Point de coût marginal" |
| | } |
| ), | |
| | Contour Box ("graphique de van Westendorf", |
| | op = Table de données ("vw3") << Tracé de superposition ( |
| | X (: prix), |
| | choisir (rb << obtenir (), Y (: cher,: bonne affaire), Y (: trop cher,: pas cher)), |
Je pensais que j'utiliserais la fonction de sélection pour renvoyer l'instruction Y correspondante. Mais ça ne marche pas. Aucune suggestion?
Merci,
Walt
Merci pour cette suggestion. On dirait que ça va faire l'affaire, alors je vais l'essayer bientôt.
Merci pour votre aide.
Walt
Malheureusement, vous devrez créer une chaîne dynamique contenant les commandes permettant de créer votre tracé de superposition, puis exécuter cette chaîne. Voici un exemple qui utilise evalinsert:
dt = ouvrir ( "$ sample_data \ Car Physical Data.jmp" ) ;
liste de choix = { "Cercle de retournement, déplacement" , "Puissance, taille du réservoir d'essence" } ;
liste_col = { ": Cercle de retournement,: Déplacement" , ": Puissance, Taille du réservoir d'essence" } ;
option = 1 ;
maintenant = nouvelle fenetre ( "Sélectionner les courbes à analyser" , << modal ,
rb = Radio Box ( liste de choix , option = rb << obtenir ; )
) ;
yaxis_label = liste de choix [ option ] ;
yaxis_cols = liste_col [ option ] ;
overlay_expr = evalinsert ( "\ [Parcelle superposée (
X (: poids),
Y (^ yaxis_cols ^),
SendToReport (
Dispatch ({}, "", AxisBox, {Ajouter un libellé d'axe ("^ yaxis_label ^")}),
Dispatch ({}, "Y", TextEditBox, {Set Text ("^ yaxis_label ^")})
)
)] \ " ) ;
eval ( analyser ( overlay_expr )) ;
Cela peut sembler compliqué, mais je le fais tout le temps lorsque JMP ne veut pas reconnaître les variables.
Merci, mais comment puis-je toujours indiquer à Overlay Plot quelle paire de variables (comme dans Y (: Cher,: Une affaire)) à utiliser?
Walt
Walt,
Cela devrait corriger la partie initiale de votre code:
liste de choix = { "Prix optimal" ,
"Indifférence Price Point" ,
"Point de bon marché marginal" ,
"Point de coût marginal"
} ;
maintenant = nouvelle fenetre ( "Sélectionner les courbes à analyser" , << modal ,
rb = Radio Box ( liste de choix , option = rb << obtenir ; )
) ;
yaxis_label = liste de choix [ option ] ;