Beibehalten der Zellenfarbe beim Teilen von TabelsHallo,
Ich habe Beispielbeispiel verwendet 49836, um Zellen in einer Spalte um den Wert in einer anderen Spalte zu färben , aber jetzt muss ich die Tabelle aufteilen und die Zellenfarben beibehalten.
Ich habe eine vorherige Diskussion über verkettete Tabellen gesehen, mit etwas Arbeit, wie man die Farben wieder bekommt.
Gibt es einen ähnlichen Weg, um es mit Split-Tabelle zu tun?
Vielen Dank
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenNochmals vielen Dank für Ihre Hilfe, ich werde Ihr Beispiel verwenden und den Code entsprechend anpassen.
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenMir war bewusst, dass Sie nicht genau gesagt haben, was Ihre Trennung ist. Meine Absicht, das von mir generierte Beispiel zur Verfügung zu stellen, bestand darin, Ihnen ein Beispiel für die allgemeine Vorgehensweise zu geben, die zur Lösung des Problems erforderlich wäre. Ich gehe davon aus, dass Sie in der Lage sein sollten, das von mir angeführte Beispiel zu verwenden, zu erweitern und zu ändern, um Ihre genauen Spezifikationen zu erfüllen.
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenDanke für die schnelle Antwort,
Das Problem ist, dass ich die Tabelle nach der anderen Spalte aufteilen muss, als der Spalte, die zum Einstellen der Farbe verwendet wird.
In unserem Beispiel muss ich die Tabelle nach Geschlecht aufteilen, wobei die Farbe durch Alter definiert wird.
dtSplit = dt < < Teilt ( Split By ( : Sex ) . Teilt ( : Höhe ) . Restliche Spalten ( Fallen Alles ) . Sortiere nach Säule Eigentum ) ;
Danke noch einmal,
Ran
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenHier ist eine Erweiterung des von Ihnen referenzierten Beispiels, die Ihnen möglicherweise Hinweise zum Übertragen der Farben gibt
/* 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 );
);
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenDies ist der eine, es tut mir leid, dass ich den Link nicht in meinem ersten Post veröffentlicht habe.
Nach dem Split bekomme ich viele durchgehende Spalten ohne Farbe.
Das Merkwürdige, was mir aufgefallen ist, ist, wenn ich die farbige Charakterspalte aufspalte, bekomme ich zwar Farben, aber nicht die richtigen.
Wenn die Farben stimmen, könnte ich die Spalte in Charecter ändern, teilen und dann wieder in Continuues wechseln. Dies ist jedoch keine elegante Lösung.
Danke noch einmal
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenIch denke, das OP bezieht sich auf dieser Support-Hinweis .
Re: Behalten Sie die Zellenfarbe bei, wenn Sie Tabels teilenBitte entschuldigen Sie meine Unwissenheit, aber wo finde ich Msgstr "Probe 49836, um Zellen in einer Spalte durch den Wert in einer anderen Spalte zu färben".
Es gibt keine direkte Möglichkeit, die Zellenfarben beizubehalten, aber wenn ich die Besonderheiten des Beispiels, auf das Sie sich beziehen, erkennen kann, kann ich möglicherweise eine Lösung finden.