Creazione di un grafico sovrapposizione in base a una selezione casella radio<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Sto creando uno script che crea un grafico di sovrapposizione con una variabile (prezzo) sull'asse xe due variabili sull'asse y. Il mio script funziona bene, ma ora voglio creare una finestra di dialogo in cui un utente può selezionare quali due variabili tracciare sull'asse y. Ci sono combinazioni di set, quindi mi piacerebbe usare una Radio Box con le coppie accettabili elencate. Ma sfortunatamente non posso dire al comando Overlay quali variabili usare. La parte rilevante del mio codice è:
| | Contorno ("Seleziona le curve da analizzare", rb = Radio Box ( {"Punto di prezzo ottimale", |
| | "Punto di prezzo dell'indifferenza", |
| | "Punto di economicità marginale", |
| | "Punto di margine marginale" |
| | } |
| ), | |
| | Schema di riquadri ("van Westendorf Graph", |
| | op = Data Table ("vw3") << Overlay Plot ( |
| | X (: prezzo), |
| | scegliere (rb << Get (), Y (: costoso,: affare), Y (: troppo costoso,: economico)), |
Anche se io userei la funzione choose per restituire l'istruzione Y pertinente. Ma questo non funziona. Eventuali suggerimenti?
Grazie,
Walt
Ri: Creazione di un grafico di sovrapposizione in base a una selezione di casella radioGrazie per questo suggerimento. Sembra che farà il trucco, quindi proverò presto.
Grazie per tutto l'aiuto.
Walt
Ri: Creazione di un grafico di sovrapposizione in base a una selezione di casella radioSfortunatamente dovrai ricorrere alla creazione dinamica di una stringa che contenga i comandi per creare il tuo grafico di sovrapposizione e quindi eseguire quella stringa. Ecco un esempio che utilizza evalinsert:
dt = Aperto ( "$ sample_data \ Car Physical Data.jmp" ) ;
choice_list = { "Turning Circle, Displacement" , "Potenza, dimensioni del serbatoio del gas" } ;
col_list = { ": Turning Circle,: Displacement" , ": Potenza,: Dimensioni del serbatoio del gas" } ;
opzione = 1 ;
nw = nuova finestra ( "Seleziona le curve da analizzare" , << modale ,
rb = Radio Box ( choice_list , opzione = rb << ottenere ; )
) ;
yaxis_label = choice_list [ opzione ] ;
yaxis_cols = col_list [ opzione ] ;
overlay_expr = evalinsert ( "\ [Sovrapposizione trama (
X (: peso),
Y (^ yaxis_cols ^),
SendToReport (
Dispatch ({}, "", AxisBox, {Aggiungi etichetta dell'asse ("^ yaxis_label ^")}),
Dispatch ({}, "Y", TextEditBox, {Set Text ("^ yaxis_label ^")})
)
)] \" ) ;
eval ( analizzare ( overlay_expr )) ;
Può sembrare complicato, ma lo faccio sempre quando JMP non vuole riconoscere le variabili.
Ri: Creazione di un grafico di sovrapposizione in base a una selezione di casella radioGrazie, ma come faccio a dire Overlay Plot quale coppia di variabili (come in Y (: costoso,: affare)) da usare?
Walt
Ri: Creazione di un grafico di sovrapposizione in base a una selezione di casella radioWalt,
Questo dovrebbe risolvere la parte iniziale del tuo codice:
choice_list = { "Punto di prezzo ottimale" ,
"Punto di prezzo dell'indifferenza" ,
"Punto di marginalità marginale" ,
"Punto di margine marginale"
} ;
nw = nuova finestra ( "Seleziona le curve da analizzare" , << modale ,
rb = Radio Box ( choice_list , opzione = rb << ottenere ; )
) ;
yaxis_label = choice_list [ opzione ] ;