Mantenere il colore delle celle quando si separano i tabelCiao,
Ho usato un esempio di esempio 49836 per colorare le celle in una colonna in base al valore in una colonna diversa , ma ora ho bisogno di dividere il tavolo e mantenere i colori delle celle.
Ho visto una discussione precedente riguardante la tabella concatenata, con un po 'di lavoro su come ottenere di nuovo i colori.
C'è un modo simile per farlo con split table?
Grazie
Ri: Mantenere il colore della cella quando divisi tabelGrazie ancora per il tuo aiuto, userò il tuo esempio e modificherò il codice di conseguenza.
Ri: Mantenere il colore della cella quando divisi tabelEro consapevole del fatto che non avevi dato le informazioni precise su cosa fosse la tua divisione. La mia intenzione di fornire l'esempio che ho generato è stata di darvi un esempio dell'approccio generale che dovrebbe essere adottato per risolvere il problema. Suppongo che dovresti essere in grado di prendere l'esempio che ho dato e di espanderlo e cambiarlo per soddisfare le tue specifiche precise.
Ri: Mantenere il colore della cella quando divisi tabelGrazie per la risposta rapida,
Il problema è che ho bisogno di dividere la tabella da un'altra colonna, quindi la colonna utilizzata per l'impostazione del colore.
nel nostro esempio, ho bisogno di dividere il tavolo per: sesso mentre il colore è definito da: age.
dtSplit = dt < < Diviso ( Dividi da ( : sesso ) , Diviso ( : altezza ) , Colonne rimanenti ( Far cadere Tutti ) , Ordina per Colonna Proprietà ) ;
Grazie ancora,
Corse
Ri: Mantenere il colore della cella quando divisi tabelEcco un'estensione dell'esempio a cui fai riferimento che potrebbe darti qualche suggerimento su come trasferire i colori
/* Open a sample data table */
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
/* Obtain a list of unique values of age */
Summarize( a = By( :age ) );
/* Assign rowstate colors by the values in the age column */
dt << Color by Column( :age, Color Theme( "JMP Dark" ) );
/* Loop through each unique age and assign the rowstate color to the Color Cells */
For( i = 1, i <= N Items( a ), i++,
r = As List( dt << Get Rows Where( :age == Num( a[i] ) ) );
Column( dt, "height" ) << Color Cells( Color Of( Row State( r[1] ) ), r );
);
dtSplit = dt << Split( Split By( :age ), Split( :height ), Remaining Columns( Drop All ), Sort by Column Property );
// loop across all of the columns, and color the non missing cells with the
// color they had in the original data table
For( i = 1, i <= N Cols( dtSplit ), i++,
// Create a row list from the original table, based upon the column name
// in the split data table
r = As List( dt << Get Rows Where( :age == Num( Column( dtSplit, i ) << get name ) ) );
// Create a list of non missing rows in the split data table
r1 = As List( dtSplit << Get Rows Where( Is Missing( Column( dtSplit, i )[Row()] ) == 0 ) );
// Point back to the original data table and get the color from the row state
Current Data Table( dt );
TheColor = Color Of( Row State( r[1] ) );
// Point to the split table, and set the color of all of the
// non missing cells to the color found in the original table
Current Data Table( dtSplit );
Column( dtSplit, i ) << Color Cells( TheColor, r1 );
);
Ri: Mantenere il colore della cella quando divisi tabelQuesto è quello, mi dispiace non aver inserito il link nel mio primo post.
dopo lo split ottengo molte colonne continue senza alcun colore.
La cosa strana che ho notato è che quando ho diviso la colonna di caratteri colorati, ottengo colori ma non quelli corretti ..
Se i colori fossero corretti, avrei potuto cambiare la colonna in Charecter, dividere e poi tornare a Continues, ma in ogni caso non è una soluzione elegante.
Grazie ancora
Ri: Mantenere il colore della cella quando divisi tabelPenso che l'OP si riferisca a questa nota di supporto .
Ri: Mantenere il colore della cella quando divisi tabelPer favore, scusa la mia ignoranza, ma dove posso trovare "Esempio 49836 per colorare le celle in una colonna in base al valore in una colonna diversa".
Non esiste un modo diretto per mantenere i colori delle celle, ma se riesco a vedere le specifiche del campione a cui fai riferimento, potrei essere in grado di creare una soluzione.