Come posso organizzare correttamente l'ordine delle opzioni nel Column Switcher senza modificare l'ordine effettivo dei campi in una DataTable?
Nel JSL fornito, il semplice ordinamento dell'elenco delle colonne non influisce sull'ordine delle opzioni nel Column Switcher.
Ho notato che a volte l'ordine effettivo delle colonne nella DataTable può influenzare l'ordine delle opzioni nel Column Switcher, ma altre volte no (non ne conosco il motivo). Tuttavia, quando si lavora con una DataTable con molte colonne, modificare l'ordine delle colonne è molto dispendioso in termini di tempo e sembra inutile. Esiste un modo per ottenere l'ordinamento desiderato delle opzioni nel Column Switcher senza modificare l'ordine effettivo delle colonne?
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
dt << New Column( "Column 0", formula( :weight+1 ) );
dt << New Column( "Column 14", formula( :weight+2 ) );
dt << New Column( "Column 3", formula( :weight+3 ) );
dt << New Column( "Column 2", formula( :weight+4 ) );
dt << New Column( "Column 11", formula( :weight+5) );
dt << New Column( "Column 1", formula( :weight+6 ) );
dt << New Column( "Column ", formula( :weight+7 ) );
col = dt << get column names( string );
SwitchOption = {};
For Each( {value, index}, col,
If( Word( 2, value, " " ) != "",
SwitchOption = Insert( SwitchOption, col[index] )
)
);
//The column list before the order arrangement.
Graph = Graph Builder(
Size( 534, 464 ),
Show Control Panel( 0 ),
Variables( X( :name ), Y( :Column 0 ) ),
Elements( Points( X, Y, Legend( 5 ) ) )
);
Graph << Column Switcher(
Column( "column 0" ),
SwitchOption,
Title( "Test" )
);
//The column list after the order arrangement.
orderedSwitchOption = {};
oder = {};
For Each( {value, index}, SwitchOption, oder = Insert( oder, Num( Word( 2, value, " " ) ) ) );
oder = Sort List( oder );
For Each( {value, index}, oder,
orderedSwitchOption = Insert( orderedSwitchOption, "Column " || Char( value ) )
);
Graph2 = Graph Builder(
Size( 534, 464 ),
Show Control Panel( 0 ),
Variables( X( :name ), Y( :Column 0 ) ),
Elements( Points( X, Y, Legend( 5 ) ) )
);
Graph2 << Column Switcher(
Column( "column 0" ),
orderedSwitchOption,
Title( "Ordered Column" )
);
Penso che con il cambio di colonna devi affidarti all'ordine delle colonne della tabella o all'ordinamento alfabetico

Non sono sicuro di cosa significhi Ordine originale in questo caso, poiché potrebbe avere un significato diverso quando parliamo di colonne in una tabella JMP

ma penso che nel caso dello switcher di colonna potrebbe essere "Ordine tabella" e non Ordine originale.
Per la tabella JMP
Utilizzo di JMP > Immetti e modifica i dati > Organizza i dati nelle tabelle dati > Riorganizza le colonne nelle tabelle dati
Originale Ordine
Restituisce le colonne nell'ordine in cui si trovavano quando la tabella dati è stata salvata l'ultima volta.