Commutatore di colonne e funzione di provaCiao,
È possibile utilizzare la funzione try in uno script del commutatore di colonne? Sto creando uno script in cui aggiungo un commutatore di colonna per alcune colonne scelte in un grafico che funziona correttamente. Tuttavia, a volte manca una colonna che interromperà lo script. Pertanto, sto cercando di utilizzare la funzione try per ciascuna delle colonne pertinenti (poiché non desidero tutte le colonne nel commutatore di colonne) ma non riesco a farlo funzionare.
dt << Column Switcher (
try ((: RER), throw ("RER non esiste")),
try ((: VO2), throw ("VO2 non esiste")),
try (: Name ("Drink- [ml]"), throw ("Drink- [ml] non esiste"))
);
È possibile o esiste un modo migliore per farlo?
Fr. Julie
Ri: Colonna commutatore e prova la funzioneEcco come lo farei
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
// set desired list of columns to be in column switcher
desiredColList = {"Height", "Weight", "Zippy"};
// remove from list, columns that are not available
For( i = N Items( desiredColList ), i >= 1, i--,
If( Try( Column( dt, desiredColList[i] ) << get name, "" ) == "",
Remove From( desiredColList, i, 1 )
)
);
// If columns are available, run the platform
If( N Items( desiredColList ) > 0,
ow = oneway( x( :age ), y( :height ) );
ow << Column Switcher( :height, desiredColList );
);Ri: Colonna commutatore e prova la funzioneVorrei utilizzare la funzione Try () al di fuori del messaggio. Costruisci il messaggio in modo condizionale. Come questo:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Fitness.jmp" );
gb = dt << Graph Builder(
Size( 532, 456 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :Age ), Y( :Oxy ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
alt cols = List();
Try(
Insert Into( alt cols, Column( dt, "Age" ) )
);
Try(
Insert Into( alt cols, Column( dt, "Weight" ) )
);
Try(
Insert Into( alt cols, Column( dt, "Runtime" ) )
);
col switcher expr = Expr( Column Switcher( :age ) );
Insert Into( col switcher expr, alt cols );
Eval(
Insert(
Expr( Send( gb ) ),
Name Expr( col switcher expr )
)
);