I seguenti lavori per myCol in dt. myCol è numerico e continuo
Names Default To Here (1);
dt = Current Data Table();
dt:myCol<< Set Property("Axis", {Min(0.02), Max(10.05), Inc( 0.01 ), Minor Ticks( 1 )});
Tuttavia, quanto segue provoca un arresto anomalo di JMP (v 16.2.0). Dove sto sbagliando?
ll = 0.02;
ul = 10.05;
dt:Cgd << Set Property( "Axis", {Min(ll), Max(ul), Inc( 0.01 ), Minor Ticks( 1 )});Il controllo come di seguito mostra il problema (vedi allegato quando si tenta di controllare le proprietà di mCol), ma non ho idee su come risolvere questo problema.
AxLim1 = dt:Cgd << Get Property ("Axis"); show (AxLim1);rapporti
AxLim1 = {Min(ll), Max(ul), Inc(0.01), Minor Ticks(1)};Penso che questo sia qualcosa di semplice che mi manca. Qualsiasi direzione sarebbe molto utile.
JMP non valuta le variabili. Prova questa soluzione alternativa:
ll = 0.02;
ul = 10.05;
Eval(
Substitute(
Expr( dt:myCol << Set Property( "Axis", {Min(lll), Max(uuu), Inc( 0.01 ), Minor Ticks( 1 )}) ),
Expr( lll ), ll,
Expr( uuu ), ul
)
);@Mark_Bailey
Grazie. Il lavoro intorno sembra funzionare. Potrei avere qualche spiegazione sulle tue istruzioni/funzionalità di script?
Lo script originale ha fornito variabili negli argomenti del messaggio Imposta proprietà. Come ho detto, JMP non li valuta in questo caso. Ciò consente di stabilire espressioni come parametri in una proprietà di colonna. Si desidera un valore costante per il parametro, quindi è necessario convertire la variabile in un valore letterale al posto della variabile. Lavorando dall'interno verso l'esterno, creo un modello dell'espressione desiderata con i segnaposto (ad esempio, lll E uuu ) per i valori letterali. Sostituisco i valori letterali valutando le variabili (es. LL E Ul ) per i segnaposto. Alla fine valuto l'espressione risultante. Puoi vedere questo lavoro selezionando la funzione Substitute() e valutandola.