Hallo,
Wissen Sie, wie Sie den „Namen“ der GraphBuilderGroupBox aus der JSL-Skriptebene erhalten? Im beigefügten Bild wäre es „männlich“ oder „weiblich“ (in roten Kreisen markiert). Ich vermute, dass es einen ähnlichen Befehl wie << xpath( "//GraphBuilderGroupBox" )) << Get Window Title gibt. Allerdings funktioniert es 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 ihre „richtige“ Position, solange ich den lokalen Datenfilter nicht verwende, andernfalls werden die geplotteten Daten durcheinander gebracht. Ich verwende JMP 16.1.
Vielen Dank für Ihre Ratschläge!
Grüße,
Li

Ich bin mir nicht sicher, ob Sie über den Graph Builder auf diese „Namen“ (Gruppierungen) zugreifen können. Sie können überprüfen, auf was Sie mit Xpath zugreifen können, indem Sie die Variable <

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 Eigenschaft „Wertelabel“ erhalten
(Column(dt, "Female") << Get Column Properties())["Value Labels"]