<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />JMP 9.0.3
Windows 7 Enterprise SP1
Sto provando a modificare alcuni parametri di visualizzazione della "carta di controllo" usando "Dispatch". Sembra che l'unico modo in cui posso far funzionare il comando è se uso direttamente la stringa per il titolo del grafico. Devo essere in grado di passare in qualche modo quel nome nel comando Invio. Ecco il mio script "non funzionante":
xbarname = eval ( "XBar di" || Nome di prova ) ;
Grafico di controllo (
Esempio di etichetta ( : Campione ) ,
Grafico Col ( : Colonna di prova ,
Xbar (
Box plot ( 1 ) ,
Collega punti ( 0 ) ,
) ,
) ,
Invia a rapporto (
Spedizione (
{ xbarname } ,
"2" ,
ScaleBox ,
{ min ( 1 ) , Massimo ( 1.5 ) , Inc ( 0,05 ) ,
Zecche minori ( 1 )}
) ,
)
) ;
Ho provato ma non sono riuscito a trovare il combinazione magica di eval, parse, expr che lo farà funzionare direttamente.Di fronte a situazioni come questa tendo a usare un approccio di forza bruta.Fondamentalmente costruisci una stringa in modo dinamico e la esegui con eval(parse()).L'uso di evalinsert consente l'inserimento pulito dei parametri, in questo caso xbarname.Inoltre, l'uso dei costrutti \[ e ]\ consente l'incorporamento di virgolette doppie senza la necessità di eseguire l'escape, il che conferisce anche al codice un aspetto più pulito.
nome di prova = "Temperatura" ;
xbarname = "XBar di" || Nome di prova ;
cc_espr = evalinsert ( "\[
Grafico di controllo(
Etichetta campione ( :Campione ),
Grafico Col( :Testcolumn, XBar( Box Plots( 1 ), Connect Points( 0 ), ), ),
SendToReport(
Spedizione(
{"^xbarname^"},
"2",
ScaleBox,
{Min( 1 ), Max( 1.5 ), Inc( 0.05 ), tick minori( 1 )}
),
)
)]\" ) ;
eval ( analizzare ( cc_espr )) ;