Hi,
Wissen Sie, wie Sie den "Namen" der GraphBuilderGroupBox aus der JSL-Skriptebene abrufen? Im beigefügten Bild wäre es "männlich" oder "weiblich" (in roten Kreisen markiert). Meine Vermutung ist, einen ähnlichen Befehl wie << xpath( "//GraphBuilderGroupBox" )) << Get Window Title zu haben. Es funktioniert jedoch nicht.
Hier ist der Code:
dt = Open( "$SAMPLE_DATA/Academic Achievement.jmp" );
win = dt << Graph Builder(
Size( 570, 475 ),
Variables( X( :Year4 ), Y( :Year2 ), Group X( :Female ) ),
Elements( Points( X, Y, Legend( 8 ) ), Smoother( X, Y, Legend( 9 ) ) )
);
GroupBoxName = (win << xpath( "//GraphBuilderGroupBox" )) << Get Window Title; //<<CLASS name="" show=""></CLASS>
Ich brauche es in meinem erweiterten Code, wo ich FrameBoxes aus verschiedenen Tabellen auf einem GB einfüge. Frameboxen behalten die "richtige" Position, solange ich keinen lokalen Datenfilter verwende, da sonst die gezeichneten Daten durcheinander gebracht werden. Ich verwende JMP 16.1.
Danke für eure Ratschläge!
Grüße,
Li

Sie sind sich nicht sicher, ob Sie vom Graph Builder aus auf diese "Namen" (Gruppierungen) zugreifen können. Sie können überprüfen, worauf Sie mit Xpath zugreifen können, indem Sie << Get XML on win variable verwenden, und basierend darauf werden "Female" und "Male" nicht erwähnt. Wenn ich auch von Show Tree Structure und Show Properties prüfe, kann ich sie dort auch nicht sehen:

Um einen Verweis auf GraphBuilderGroupBox zu erhalten, können Sie Folgendes verwenden:
gbgb = Report(win)[GraphBuilderGroupBox(1)];
//or
gbgb = (win << XPath("//GraphBuilderGroupBox"))[1]; //it is a list so use indexDer Zugriff auf die Gruppe X kann mit Variable erfolgen, aber ich bin mir nicht sicher, ob es hier hilfreich sein wird:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Academic Achievement.jmp");
win = dt << Graph Builder(
Size(570, 475),
Variables(X(:Year4), Y(:Year2), Group X(:Female)),
Elements(Points(X, Y, Legend(8)), Smoother(X, Y, Legend(9)))
);
//win << get xml
gbb = Report(win)[Graph Builder Box(1)];
wait(1);
gbb << Remove Variable(3);
gbb << Add Variable({:Female Binary, Role("Group X")});Bearbeiten:
Wenn Sie nur die Werte der weiblichen Spalte benötigen, können Sie diese direkt aus der Datentabelle abrufen. Da es sich um Wertelabels handelt, müssen Sie die Wertelabeleigenschaft abrufen
(Column(dt, "Female") << Get Column Properties())["Value Labels"]