Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Wie erkenne ich Änderungen in der Reihenfolge der X-Achse? Ich verwende das folgende JSL, um die Hintergrundfarbe zu markieren. Benutzer können die Reihenfolge der X-Achse jedoch wie im Bild unten gezeigt ändern. Wenn ich nicht erkenne, dass der Benutzer diese Änderung am Diagramm vorgenommen hat, folgt der zuvor markierte Hintergrundfarbbereich nicht der neuen Reihenfolge und wird nicht aktualisiert.
Wenn ich beispielsweise ursprünglich das Alter 13 markiert habe und der Benutzer die Reihenfolge in „Aufsteigend, Gewicht“ ändert, muss ich wissen, dass der Benutzer die Änderung der Reihenfolge ausgelöst hat, damit die rote Markierung korrekt auf die Position des Alters 13 aktualisiert werden kann, anstatt dort fixiert zu bleiben.
Mit welchen Methoden kann ich erkennen, wenn der Benutzer die Reihenfolge der X-Achse ändert, bzw. wie kann ich dafür sorgen, dass sich die Hintergrundfarbmarkierung automatisch mit der Reihenfolge ändert?
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
GraphX =dt<< Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :age ), Y( :weight ), Overlay( :sex ) ),
Elements( Box Plot( X, Y, Legend( 4 ) ) )
);
rep1 = GraphX << report;
frameboxDCRFH = rep1 << XPath( "//FrameBox" );
frameboxDCRFH << Add Graphics Script(
Transparency( 0.1 );
Fill Color( "Red" );
Rect( 0.5, Y Origin() + Y Range(), 1.5, Y Origin(), 1 )
;
);

Automatisierung und SkriptingBetreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Ich glaube nicht, dass wir Zugriff auf solche Handler haben. Sie müssten dies entweder in Ihrem Grafikskript berücksichtigen oder die Farbgebung mithilfe eines separaten Plots erstellen. Eine Möglichkeit, dies mit einem Grafikskript zu berücksichtigen, ist
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(534, 492),
Show Control Panel(0),
Variables(X(:age), Y(:weight), Y(:Column 6, Position(1)), Overlay(:sex)),
Elements(
Box Plot(X, Y(1), Legend(4)),
Points(X, Y(2), Overlay(0), Legend(6), Summary Statistic("Median"))
)
);
fb = Report(gb)[FrameBox(1)];
fb << Add Graphics Script(
fb = Report(gb)[FrameBox(1)];
barseg = fb << Find Seg(MarkerSeg(1));
xval = (barseg << Get X Values)[1];
Transparency(0.1);
Fill Color("Red");
Rect(xval - 0.5, Y Origin() + Y Range(), xval + 0.5, Y Origin(), 1)
);
Formel für Spalte 6
If(:age == 13,
Col Median(:weight, :age),
.
)
Hinzufügen eines Balkendiagramms für die Farbe


Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Und Sie können die Darstellung verbessern, indem Sie die "zusätzliche" Spalte nach rechts verschieben

Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << New Column("Column 6", Numeric, "Continuous",
Set Property(
"Axis",
{Show Major Ticks(0), Show Minor Ticks(0), Show Labels(0), Min(0.49),
Max(0.5), Inc(0.2), Minor Ticks(0), Label Row(
{Show Major Labels(0), Show Major Ticks(0), Show Minor Ticks(0)}
)}
),
Formula(
If(:age == 13,
1
,
.
)
);
);
gb = dt << Graph Builder(
Size(712, 621),
Show Control Panel(0),
Variables(X(:age), Y(:weight), Y(:Column 6, Position(1), Side("Right")), Overlay(:sex)),
Elements(Bar(X, Y(2), Overlay(0), Legend(9), Summary Statistic("Median")), Box Plot(X, Y(1), Legend(4))),
SendToReport(
Dispatch({}, "400", ScaleBox, {Legend Model(9, Properties(0, {Fill Color(67), Transparency(0.2)}, Item ID("Median(Column 6)", 1)))}),
Dispatch({}, "Y r title", TextEditBox, {Set Text("")}),
Dispatch({}, "400", LegendBox, {Legend Position({9, [2], 4, [0, 1, -3, -3]})})
)
);
Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Ich möchte die Achse auf der rechten Seite entfernen. Ich weiß jedoch nur, wie ich die Anzeigeeigenschaften wie in der Abbildung unten manuell ändern und die Sichtbarkeit auf „Versteckt“ setzen kann. Wie kann ich diese Einstellung mit JSL erreichen?

Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Ich möchte den Median-Marker in der Legendeneinstellung auch automatisch mit JSL entfernen. Das Bild unten zeigt, wie man ihn manuell entfernt. Wie kann ich ihn mit JSL ausblenden?

Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Wie lauten Ihre Achseneinstellungen? Sie können damit den Großteil der Achsen ausblenden/entfernen. Median sollte keine Markierungen hinzufügen, es sei denn, Sie verwenden Punkte im Balkendiagramm. Wenn Sie das Legendenelement und nicht die Markierung meinen, ist es am einfachsten, es manuell auszublenden und das Skript zu kopieren.
Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?
Ich habe eine abgeleitete Frage.
Wenn das Originaldiagramm bereits eine Variable mit der Bezeichnung „Farbe“ enthält und die Farbe des Balkendiagramms nicht auf Rot eingestellt werden kann, was muss ich tun, um das Problem zu beheben und die rote Farbe beizubehalten?
Das folgende JSL sollte diese beiden Punkte berücksichtigen:
1. Fügen Sie color() zu den Variablen hinzu:
Variablen(X(:Alter), Y(:Gewicht), Y(:Spalte 6, Position(1), Seite("Rechts")), Overlay(:Geschlecht),
Farbe("Geschlecht")
),
2. Ändern Sie Fill color() in Rot: Dispatch({}, "400", ScaleBox, {Legend Model(9, Properties(0, { Füllfarbe("Rot") , Transparency(0.2)}, Item ID("Median(Column 6)", 1)))}),
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << New Column("Column 6", Numeric, "Continuous",
Set Property(
"Axis",
{Show Major Ticks(0), Show Minor Ticks(0), Show Labels(0), Min(0.49),
Max(0.5), Inc(0.2), Minor Ticks(0), Label Row(
{Show Major Labels(0), Show Major Ticks(0), Show Minor Ticks(0)}
)}
),
Formula(
If(:age == 13,
1
,
.
)
);
);
gb = dt << Graph Builder(
Size(712, 621),
Show Control Panel(0),
Variables(X(:age), Y(:weight), Y(:Column 6, Position(1), Side("Right")), Overlay(:sex),Color("sex")),
Elements(Bar(X, Y(2), Overlay(0), Legend(9), Summary Statistic("Median")), Box Plot(X, Y(1), Legend(4))),
SendToReport(
Dispatch({}, "400", ScaleBox, {Legend Model(9, Properties(0, {Fill Color("Red"), Transparency(0.2)}, Item ID("Median(Column 6)", 1)))}),
Dispatch({}, "Y r title", TextEditBox, {Set Text("")}),
Dispatch({}, "400", LegendBox, {Legend Position({9, [2], 4, [0, 1, -3, -3]})})
)
);
Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Farbe aus Balkendiagrammvariablen deaktivieren und die Farbe ändern?
Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Ich habe die Farbe des Balkens in „Diagramm anpassen“ festgelegt, aber es sind keine Änderungen aufgetreten.
Oder sollte ich die Farbe der Leiste in einem anderen Bereich einstellen? Ich konnte keine andere Stelle finden, um die Leistenfarbe einzustellen.

Betreff: Wie erkennt man Änderungen in der Reihenfolge der X-Achse?Nachdem ich Ihr Skript ausgeführt habe, deaktiviere ich die Farbe für den Balken (rechts).

Dann kann ich den Median (Spalte 6) ändern.
