Die Reihenfolge der Referenzlinien funktioniert nichtHallo. Ich verwende ein Tabellenskript, um einige bivariate Diagramme zu erstellen. Für jeden Plot erstelle ich einige Referenzlinien, verwende dann aber einen Dispatch auf der Framebox, um die Reihenfolge der Referenzlinien auf etwas Höheres zu ändern, sodass die Referenzlinien vor den Daten gezeichnet werden. Dies scheint jedoch nichts zu ändern. Hier ist ein einfaches Beispiel dafür, was ich versuche. Wenn ich das mache, ändert sich die Reihenfolge der Referenzlinien nicht.
Vermisse ich etwas?
myWin = New Window( "plots",
H List Box(
Bivariate(
Y( :Name( "y1" ) ),
X( :Name( "x1" ) ),
SendToReport(
Dispatch(
{},
"1",
ScaleBox,
{Add Ref Line( 329, "Solid", "Black", "a line", 2 ),
Add Ref Line( 349, "Solid", "Blue", "b line", 2 )}
),
Dispatch(
{},
"Bivar Plot",
FrameBox,
{Frame Size( 400, 300 ), Grid Line Order( 1 ), Reference Line Order( 5 )}
),
),
Bivariate(
Y( :Name( "y2" ) ),
X( :Name( "x2" ) ),
SendToReport(
Dispatch(
{},
"1",
ScaleBox,
{Add Ref Line( 329, "Solid", "Black", "a line", 2 ),
Add Ref Line( 349, "Solid", "Blue", "b line", 2 )}
),
Dispatch(
{},
"Bivar Plot",
FrameBox,
{Frame Size( 400, 300 ), Grid Line Order( 1 ), Reference Line Order( 5 )}
),
)
)
)
)
)Betreff: Die Reihenfolge der Referenzlinien funktioniert nichtWie sich tatsächlich herausstellt, wird die Hierarchie oben angezeigt, wenn Sie im Abschnitt „Grafiken hinzufügen“ des Versands keine Hierarchie angeben. Das habe ich also getan. Ich möchte erwähnen, dass es den Anschein hat, dass der Hintergrund/Vordergrund bei der Verwendung von Dispatch ignoriert wird.
Betreff: Die Reihenfolge der Referenzlinien funktioniert nichtMarks Skript zeichnet die Linien für mich über allen anderen Referenzlinien und Gitterlinien sowie der Anpassungslinie.
Die einzige Reihenfolge für die Framebox, die ich kenne, abgesehen von der Skripterstellung, ist die Rasterlinienreihenfolge und die Referenzlinienreihenfolge.
Je nachdem, wie und wann Sie Elemente zur Framebox hinzufügen, müssen Sie möglicherweise eine Inval-Nachricht und dann eine Update Window-Nachricht senden. Für mich geht das.Siehe unten. Sie sollten angeben, welche Version von JMP Sie verwenden und MAC vs. PC.
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = Bivariate( Y( :weight ), X( :height ), FitLine );
rbiv = biv << report;
axisbox = rbiv[axis box( 1 )];
axisbox << Add Ref Line( 108.3182, "Solid", blue, "M mean", 2 );
axisbox << Add Ref Line( 100.9444, "Solid", purple, "F mean", 2 );
rbiv[axis box( 1 )] << {Min( 60 ), Max( 180 ), Inc( 10 ), Minor Ticks( 1 ),
Label Row( {Show Major Grid( 1 ), Show Minor Grid( 1 )} )};
rbiv[axis box( 2 )] << {Min( 50 ), Max( 72.5 ), Inc( 4 ), Minor Ticks( 1 ),
Label Row( {Show Major Grid( 1 ), Show Minor Grid( 1 )} )};
biv_fb = rbiv[frame box( 1 )];
biv_fb << Reference Line Order( 1 );
biv_fb<<INVAL></INVAL>
Betreff: Die Reihenfolge der Referenzlinien funktioniert nichtHmm. Ich habe an den beiden Punkten ein Grafikskript mit V-Linie hinzugefügt und es auf einer höheren Zeichnungsebene erstellt, aber es hat diese Linien immer noch nicht nach vorne gebracht oder sie über alles gezeichnet. Trotz der Empfehlung verwende ich immer noch „An Bericht senden“, da ich noch viel mehr Plots einbeziehen möchte und das Skript auf diese Weise bereits für mich geschrieben ist. Aber das scheint nicht zu funktionieren.
Betreff: Die Reihenfolge der Referenzlinien funktioniert nichtHier ist eine Lösung:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "My Plots",
H List Box(
biv1 = dt << Bivariate( Y( :Weight ), X( :Height ) ),
biv2 = dt << Bivariate( Y( :Weight ), X( :Height ) )
)
);
{biv1_rep, biv2_rep} = {biv1, biv2} << Report;
{biv1_rep[FrameBox( 1 )], biv2_rep[FrameBox( 1 )]} << Frame Size( 400, 300 );
{biv1_rep[FrameBox( 1 )], biv2_rep[FrameBox( 1 )]} << Add Graphics Script(
H Line( 120 );
);Betreff: Die Reihenfolge der Referenzlinien funktioniert nichtDas Achsenfeld ist für die Verwaltung der Referenzlinien verantwortlich. Die Reihenfolge der Referenzlinien ist relativ zu anderen Referenzlinien, nicht zu den anderen Grafiken.Ich glaube, dass die Linien zuerst gezeichnet werden (visueller Hintergrundkontext), zusammen mit allen anderen Maßstabsanpassungen, bevor die Grafikskripte in der Rahmenbox (die eigentlichen visuellen Informationen) erstellt werden.
Du könntest benutzen H-Linie() oder V-Linie( )-Funktionen und Sie haben dann die Kontrolle darüber, wann sie in Bezug auf andere Grafikelemente gezeichnet werden. Sie sind mit der Rahmenbox verknüpft, nicht mit der Achsenbox.
Wir empfehlen nicht, die Direktive „An Bericht senden“ zu verwenden. Es ist besser, die Nachricht direkt an das Zielobjekt zu senden.