Ändern Sie die Schriftfarbe in TableBox mit JSLIst es möglich, die Schriftfarbe für einzelne Zellen innerhalb einer Tablebox zu ändern?
Ich habe einen älteren Beitrag gefunden, in dem stand, dass dies ohne bedingte Formatierung nicht möglich sei: https://community.jmp.com/t5/Discussions/Is-there-a-way-to-send-a-font-color-to-a-single-value-in-a/td-p/8643
Und die bedingte Formatierung funktioniert bei diesem Projekt nicht. Ich hatte gehofft, dass diese Funktionalität hinzugefügt wurde, seit der ältere Beitrag verfasst wurde.
Im Wesentlichen habe ich ein Diagramm mit einer entsprechenden Tabelle darunter. Ich möchte, dass die Schriftfarbe für jede Zeile der Linienfarbe im Diagramm entspricht.
Ich habe versucht, die Zeilenhintergrundfarben der Tablebox mit „SetSelectedRowColor“ festzulegen, aber es ist hässlich und unleserlich. Wenn möglich, wäre es weitaus besser, die Schriftfarbe zu ändern.
Betreff: Schriftfarbe in TableBox mit JSL ändernSoweit ich weiß, besteht die einzige unterstützte Hervorhebungsmethode für eine Tablebox darin, die gesamte Zeile hervorzuheben.
Betreff: Schriftfarbe in TableBox mit JSL ändernHallo, gibt es eine Möglichkeit, ausgewählte Zellen einzufärben? Ich habe hunderte Zellen ausgewählt und möchte ihnen eine Farbe verleihen, die sie hervorhebt.
Danke
Sam
Betreff: Schriftfarbe in TableBox mit JSL ändernSie können die Textfarben in einem Tabellenfeld festlegen. Sie müssen Kühlboxen verwenden. Hier ist ein Beispiel:
// Col Box Examples
nw = New Window( "Mountains",
tb = Table Box(
sb = String Col Box( "Mountain",
{"K2", "Delphi", "Kilimanjaro", "Grand Teton"}),
// Text boxes of different colors
cc = col box("Name",
tb1 = textbox("Hello"),
tb2 = textbox("World"),
tb3 = textbox("Fubar"),
tb4 = textbox("Geronimo")
),
),
);
tb1 << font color("Red") << set font style("Bold");
tb2 << font color("Blue");
tb3 << font color("Green");
tb4 << font color("Orange") << set font style("Bold");
Betreff: Schriftfarbe in TableBox mit JSL ändernHaha, „Fehler“ ist etwas hart – diese Begründung macht absolut Sinn, danke für die Information 
Betreff: Schriftfarbe in TableBox mit JSL ändernDas Durcheinander ist meine Schuld. Außerhalb von Graph Builder überspringt JMP Grün, wenn zwei Farben benötigt werden, um den üblichen Rot/Grün-Farbmangel zu vermeiden. Allerdings ist Graph Builder etwas dynamischer und muss in der Lage sein, von zwei auf drei Farben zu wechseln, ohne die ersten beiden Farben zu ändern, also ordnet er sie von Anfang an neu an (jede Dreiergruppe erhält eine Rotation um den Farbkreis).Dies geschieht nur bei den mit „JMP“ gekennzeichneten Farbthemen. Sie vermeiden also die doppelte Reihenfolge, indem Sie ein anderes Farbthema verwenden.
Betreff: Schriftfarbe in TableBox mit JSL ändernVielen Dank, dass du dir die Zeit genommen hast, dies zu dokumentieren, Adam. Ich werde die Forschung und Entwicklung darauf aufmerksam machen.
Betreff: Schriftfarbe in TableBox mit JSL ändernNochmals vielen Dank, Ian, das hilft mir sehr. Ich habe einen guten Schlachtplan ausgearbeitet, damit das jetzt funktioniert.
Obwohl es nicht mehr relevant ist, um näher auf #2 einzugehen: Wenn Wertfarben auf eine Spalte angewendet werden, unterscheidet sich die Reihenfolge der Farben, die in der Spalte auftreten, von der Reihenfolge, in der das Thema im Diagrammersteller verwendet wird.
In diesem Bild ist die Spalte „Themenfarbe“ eine Spalte, die ich mit 1 bis 20 gefüllt habe und dann auf „Wertfarben“ -> „Farbe nach Wert“ -> „JMP Light“ geklickt habe.
Die Spalte „GB-Farbe“ ist eine von mir manuell erstellte Spalte, die die sequentielle Farbreihenfolge anzeigt, die im Graph Builder angezeigt wird, wenn JMP Light auf das Diagramm angewendet wird.

Nach dem 12. Eintrag werden die Farben synchronisiert, vorher entsprechen sie jedoch nicht der Reihenfolge innerhalb des JMP Light-Themes.
Nicht mehr wirklich wichtig, aber ich finde dieses Verhalten immer noch ziemlich seltsam. Wissen Sie, warum Graph Builder die ersten 12 Farben im Farbthema durcheinander bringt?
Nochmals vielen Dank für all Ihre Zeit und Hilfe,
-Adam
Betreff: Schriftfarbe in TableBox mit JSL ändernFür Teil 1 können Sie Folgendes tun:
New Table( "Untitled 114",
Add Rows( 10 ),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] )
)
);
Wait(2);
:Column 1 << set Property( "Value Colors", Color Theme( "White to Blue" ) );
:Column 1 << colorCellByValue;
Wait(2);
:Column 1 << set Property( "Value Colors", Color Theme( "Light" ) );
Können Sie für Teil 2 eine Tabelle mit nur wenigen Zeilen und einem gespeicherten Graph Builder-Skript mit Ihren Wünschen teilen?
Betreff: Schriftfarbe in TableBox mit JSL ändernHallo Ian,
Danke für die Hilfe. Um Zeit zu sparen, denke ich darüber nach, einfach eine neue Spalte am Anfang der Datentabelle („ID“) hinzuzufügen, bevor sie in eine Tabellenbox umgewandelt wird, sie mit i++ zu füllen und Wertefarben und ein Standardfarbthema (JMP) zu verwenden Licht), um die Hintergrundfarben zuzuweisen.
Auf diese Weise können wir die Farben einfach erzeugen und der eigentliche Text bleibt weiterhin lesbar. Es ist nicht ideal, aber es sollte den Sinn und Zweck verdeutlichen.
Allerdings stoße ich auf zwei Probleme:
- Zuweisen der Wertfarben für eine Spalte über JSL
- Ich habe versucht, dies über das Tabellenskript zu stehlen:
New Table( "Untitled 114",
Add Rows( 10 ),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Property(
"Value Colors",
{1 = 35, 2 = 36, 3 = 37, 4 = 38, 5 = 39, 6 = 40, 7 = 41, 8 = 42, 9 = 43,
10 = 44}
),
Color Cell by Value,
Set Selected,
Set Values( [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] )
)
)Was ich wirklich gerne tun würde, ist SetProperty("Value Colors", "JMP Light") anstelle der Liste im Tabellenskript. Gibt es eine Möglichkeit, dies zu tun? - Wenn Graph Builder aufnimmt < , ändert sich die Palette selbst, aber die Reihenfolge der Farben ist andersDh, JMP-Standard (und JMP-Licht) gehen zu Rot->Grün->Blau->Orange->usw., während der Graph Builder zu Blau->Rot->Grün->Lila->usw. geht
- Im Wesentlichen benötige ich eine Liste der Farben, die der Graph Builder für meine Untertabellen verwendet.
- Eine Alternative wäre, Farben in der Datentabelle zuzuweisen und Graph Builder dann diese Farben anstelle einer Palette verwenden zu lassen, aber die Daten werden auf der Grundlage der Benutzerinteraktion in Teilmengen unterteilt und in mehrere Diagramme/Tabellen aufgeteilt – das ist zwar möglich, aber möglich Es wäre viel einfacher, einfach eine Liste der vom Graph Builder verwendeten Standardfarben in der richtigen Reihenfolge zu erhalten.
Danke noch einmal!
Betreff: Schriftfarbe in TableBox mit JSL ändernEs sieht so aus, als ob „<< textColor()“ immer noch global auf den Inhalt von „StringColBox()“ einwirkt.
Ich nehme an, Sie könnten mit „TextBox()“ Ihren eigenen Schlüssel erstellen:
NewWindow("Legend",
LineUpBox(NCol(2),
TextBox("Some Text: "), tb1 = TextBox("Males", << fontColor("Red")),
TextBox("Some Text: "), tb2 = TextBox("Females", << fontColor("Blue"))
)
);