¿Cómo puedo organizar correctamente el orden de las opciones en el Conmutador de columnas sin cambiar el orden real de los campos en una DataTable?
En el JSL proporcionado, simplemente ordenar la lista de columnas no afecta el orden de las opciones en el Selector de columnas.
He observado que, a veces, el orden de las columnas en la DataTable puede afectar el orden de las opciones en el Selector de Columnas, pero otras veces no (desconozco el motivo). Sin embargo, al trabajar con una DataTable con muchas columnas, cambiar el orden de las columnas es muy laborioso y parece irrelevante. ¿Hay alguna forma de lograr el orden deseado de las opciones en el Selector de Columnas sin cambiar el orden de las columnas?
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" )
);
Creo que con el conmutador de columnas debes confiar en el orden de las columnas de la tabla o en el orden alfabético.

No estoy seguro de qué significa Orden original en este caso, ya que podría tener un significado diferente cuando hablamos de columnas en una tabla JMP.

pero creo que en el caso del conmutador de columnas podría ser "Orden de tabla" y no Orden original.
Para la tabla JMP
Uso de JMP > Ingresar y editar sus datos > Organizar datos en tablas de datos > Reorganizar columnas en tablas de datos
Original Orden
Devuelve las columnas al orden en que estaban cuando se guardó la tabla de datos por última vez.