Question JSL sur la tabulation, le tri et la couleur des cellules dans la boîte de données du tableauBonjour à la communauté, je souhaite créer plusieurs tableaux via tabulation, trier la colonne cible de chaque tableau de la plus grande à la plus petite, les regrouper dans une nouvelle fenêtre et afficher les données de la première ligne en vert. Voici comment j'ai procédé avec la classe big data sample, avec quelques problèmes dont je ne comprends pas la cause :
1. la fenêtre de tri reste ouverte et n'effectue pas réellement le tri
2. la plateforme tabulaire reste ouverte
3. Je ne sais pas comment colorer les cellules après les avoir placées dans la zone de tableau de données dans une nouvelle fenêtre
Ci-dessous mon JSL :
Open( "$SAMPLE_DATA/Big Class.jmp" );
Data Table( "Big Class.jmp" ) << Tabulate();
Local( {obj},
obj = Data Table( "Big Class.jmp" ) << Tabulate(
Show Control Panel( 0 ),
Add Table(
Column Table( Analysis Columns( :height ) ),
Row Table( Grouping Columns( :name ) )
)
);
dt1 = obj << Make Into Data Table;
obj << Close Window;
);
dt1 << Sort(
By( :"sum(height)"n ),
Replace Table,
Order( Descending )
);
Data Table( "Big Class.jmp" ) << Tabulate();
Local( {obj},
obj = Data Table( "Big Class.jmp" ) << Tabulate(
Show Control Panel( 0 ),
Add Table(
Column Table( Analysis Columns( :weight ) ),
Row Table( Grouping Columns( :name ) )
)
);
dt2 = obj << Make Into Data Table;
obj << Close Window;
);
dt2 << Sort(
By( :"sum(weight)"n ),
Replace Table,
Order( Descending )
);
nw = new window("summary", H list box(data table box(dt1), data table box(dt2)));
Automatisation et scriptsRe : Question JSL sur la tabulation, le tri et la couleur des cellules dans la zone de tableau de donnéesIl peut s'agir d'espaces de noms liés à un problème (vous utilisez Local)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
obj = dt << Tabulate(
Show Control Panel(0),
Add Table(Column Table(Analysis Columns(:height)), Row Table(Grouping Columns(:name)))
);
dt1 = obj << Make Into Data Table;
obj << Close Window;
dt1 << Sort(By(:"sum(height)"n), Replace Table, Order(Descending));
obj = dt << Tabulate(
Show Control Panel(0),
Add Table(Column Table(Analysis Columns(:weight)), Row Table(Grouping Columns(:name)))
);
dt2 = obj << Make Into Data Table;
obj << Close Window;
dt2 << Sort(By(:"sum(weight)"n), Replace Table, Order(Descending));
nw = New Window("summary", H List Box(Data Table Box(dt1), Data Table Box(dt2)));
Re : Question JSL sur la tabulation, le tri et la couleur des cellules dans la zone de tableau de donnéesmerci beaucoup!
j'ai essayé mais j'ai toujours le problème de la plate-forme de tri ouverte, sans vraiment agir.
si j'exécute le code ligne par ligne, cela fonctionne mais je ne sais pas pourquoi cela échoue lors de l'exécution de l'intégralité du code...
Re : Question JSL sur la tabulation, le tri et la couleur des cellules dans la boîte de données du tableauVoici comment j'ai pu faire fonctionner votre code :

dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
//Data Table( "Big Class.jmp" ) << Tabulate();
//Local( {obj},
obj = Data Table( "Big Class.jmp" ) << Tabulate(
Show Control Panel( 0 ),
Add Table( Column Table( Analysis Columns( :height ) ), Row Table( Grouping Columns( :name ) ) )
);
dt1 = obj << Make Into Data Table;
obj << Close Window;
//);
dt1 << Sort( By( :"sum(height)"n ), Replace Table, Order( Descending ) );
// Color the cells in row 1
Current Data Table( dt1 );
:name << color cells( "green", 1 );
:"Sum(height)"n << color cells( "green", 1 );
//Data Table( "Big Class.jmp" ) << Tabulate();
Local( {obj},
obj = Data Table( "Big Class.jmp" ) << Tabulate(
Show Control Panel( 0 ),
Add Table( Column Table( Analysis Columns( :weight ) ), Row Table( Grouping Columns( :name ) ) )
);
dt2 = obj << Make Into Data Table;
obj << Close Window;
);
dt2 << Sort( By( :"sum(weight)"n ), Replace Table, Order( Descending ) );
// Color the cells in row 1
Current Data Table( dt2 );
:name << color cells( "green", 1 );
:"sum(weight)"n << color cells( "green", 1 );
// The only way I know to copy cell colors in a data table to a display
// window, is to move the data table with the colored cells to a journal
// Then it can be copied into a display object in a display window.
// I repeat the operation twice in the code below
nw = New Window( "summary", hls = H List Box() );
intJr = New Window( "x", <<JOURNAL></JOURNAL>