/*
After save dt into Journal, the cell color from data data table was changed into the font color in the journal
*/
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Color by Column( :age);
Wait( 0 );
dt << Color Rows by Row State;
dt<<SAVE></SAVE>
Quale versione di JMP hai?Hai usato questo script o uno script modificato? Se modificato, allegare.
Il messaggio della tabella dt << Colore righe per stato riga () sembra essere una dichiarazione di "vista". La visualizzazione della tabella viene modificata, ma il salvataggio della tabella e l'apertura o l'inserimento nel journal non mantengono le celle colorate.L'inserimento nel journal di quella tabella creerà un report nel Journal con i colori dei caratteri della tabella che corrispondono ai colori dello stato della riga.
Tuttavia, col << Celle colore (clr, righe) è un messaggio di colonna. Questo messaggio è memorizzato negli attributi della colonna della tabella. Anche durante il journaling il colore della cella viene mantenuto.
Sotto sia lo script che il risultato sono visualizzati di seguito. Nota un altro metodo (potrebbe essere più diretto) sarebbe quello di ottenere le chiavi univoche per ogni gruppo (età), ottenere le righe per ogni età, quindi scegliere un colore e applicarlo a quelle righe di ciascuna colonna.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Color by Column( :age );
Wait( 0 );
//This next command does not save the cell colors.
//dt << Color Rows by Row State;
dt << Clear column selection();
dt << clear select;
//get the unique colors
nr = N Row( dt );
//make a list the size of the table to get the row colors and locate rows of a given color
_clr = As List( J( nr, 1, 0 ) );
For( i = 1, i <= N Row( dt ), i++,
_clr[i] = Color To RGB( Color Of( Row State( i ) ) )
);
//creates a list of unique colors
clr_keys = Associative Array( _clr ) << get keys;
//for each color (j), locate which rows are assigned that color using Loc( _clr, ...)
For( j = 1, j <= N Items( clr_keys ), j++,
idx = Loc( _clr, clr_keys[j] );
//Color the cells in rows idx and each coloumn
For( i = 1, i <= N Col( dt ), i++,
Column( dt, i ) << color cells( RGB Color( clr_keys[j] ), idx )
);
);
//now journal the table
dt << journal;
