Konstante LegendenfarbeHallo,
Ich erstelle ein Diagramm (Balkendiagramm) und ändere die Legendenfarbe (und damit die Balkenfarbe), indem ich mit der rechten Maustaste klicke und das Skript kopiere
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
8,
Properties( 0, {Fill Color( 10 )}, Item ID( "category", 1 ) ),Dies ist Teil eines größeren Diagramms.
Wenn ich das Skript ausführe und einen lokalen Datenfilter einbinde, ändert sich die Farbe der Kategorien. Das ist nachteilig, weil ich unabhängig von einem Filter die gleiche Farbe für eine Kategorie haben möchte.
Mit freundlichen Grüße,
Betreff: Konstante LegendenfarbeSie können die Füllfarbe nicht ändern, indem Sie die Zellenfarbe ändern oder den Zeilenstatus der Farbe in eine bestimmte Farbe ändern.Ein Balkendiagramm ist eine berechnete Spalte, die keinen direkten Zusammenhang zwischen der Anzeige und jeder einzelnen Zeile hat.Daher müssen Sie den gesamten Balken bearbeiten, indem Sie die Füllfarbe im Graph Builder-Code ändern.Nachfolgend finden Sie ein Beispiel dafür:
Graph Builder(
Size( 534, 418 ),
Show Control Panel( 0 ),
Variables( Y( :height ), Y( :weight, Position( 1 ) ) ),
Elements( Bar( Y( 1 ), Y( 2 ), Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
3,
Properties( 0, {Fill Color( 5 )}, Item ID( "Mean(height)", 1 ) ),
Properties( 1, {Fill Color( 5 )}, Item ID( "Mean(weight)", 1 ) )
)}
)
)
);
Betreff: Konstante LegendenfarbeIch habe alle Zellen in zwei Spalten (Höhe und Gewicht) eingefärbt, um in einem Balkendiagramm die gleiche Farbe zu erhalten, aber es hat nicht funktioniert
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
:height << Color Cell By Value( 1 ); // turn on the cell coloring
For( i = 1, i <= N Row( dt ), i++,
If( Column( dt, "height" )[i] >= 0,
Column( dt, "height" ) << Color Cells( 5, {i} ),
Column( dt, "height" ) << Color Cells( 0, {i} )
));
:weight << Color Cell By Value( 1 ); // turn on the cell coloring
For( i = 1, i <= N Row( dt ), i++,
If( Column( dt, "weight" )[i] >= 0,
Column( dt, "weight" ) << Color Cells( 5, {i} ),
Column( dt, "weight" ) << Color Cells( 0, {i} )
));
Graph Builder(
Size( 534, 418 ),
Show Control Panel( 0 ),
Variables( Y( :height ), Y( :weight, Position( 1 ) ) ),
Elements( Bar( Y( 1 ), Y( 2 ), Legend( 3 ) ) )
);Betreff: Konstante LegendenfarbeDanke,
Ich fürchte, die Antwort auf die nächste Frage lautet offensichtlich: Aber wie kann ich alle Werte in einer Spalte per Skript in eine einzige Farbe ändern?
Betreff: Konstante LegendenfarbeSie sollten das Kontrollkästchen „Einschließen“ im Filter deaktivieren können, damit die Farben des Diagramms gleich bleiben. Das Kontrollkästchen „Einschließen“ weist den Filter an, Werte bei der Berechnung des Diagramms einzubeziehen/auszuschließen. Wenn es also nicht aktiviert ist, werden alle Werte verwendet, sodass die Farben beim Speichern von gefiltertem Wert zu gefiltertem Wert berechnet werden.Betreff: Konstante LegendenfarbeSie können die Legendenfarben sperren, indem Sie die Spalteneigenschaft „Wertfarben“ verwenden. Dadurch wird sichergestellt, dass sich die Farben für jede Gruppe nicht ändern, egal auf welcher Plattform Sie arbeiten und welcher lokale Datenfilter auch immer angewendet wird.