Wie erhalte ich Beschriftungsfeldwerte in einer Datentabelle?In der beigefügten Beispieldatentabelle zeichnet das gespeicherte Skript das unten eingefügte Diagramm.
Ich möchte die Werte der Beschriftungsbox in einer Datentabelle mit TestStage-Nummern in der ersten Spalte und den Beschriftungsbox-Werten in der zweiten Spalte erhalten. Wie mache ich das über JSL?
Noch nützlicher wäre es, wenn ich die Datentabelle dynamisch generieren könnte, beispielsweise durch einen Klick auf eine Schaltfläche im Fenster „Diagrammerstellung“, nachdem ich die Wochen über den lokalen Datenfilter ausgewählt habe. Ist dies über JSL möglich?

Automatisierung und SkriptingWindowsBetreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?Haben Sie über die Verwendung von Tabulate nachgedacht?
Names Default To Here(1);
dt = Open("$DOWNLOADS/example_DataTable.jmp");
nw = New Window("",
Data Filter Context Box(
H List Box(
dt << Data Filter(Local,
Add Filter(
columns(:TestWk),
Modeling Type(:TestWk, Nominal),
Where(
:TestWk == {19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}
),
Display(:TestWk, Find(Set Text("")))
)
),
gb = dt << Graph Builder(
Size(744, 332),
Show Control Panel(0),
Variables(X(:TestWk), Y(:Median), Group Y(:TestStage)),
Elements(
Points(X, Y, Legend(8)),
Caption Box(X, Y, Legend(10), Summary Statistic("N"))
),
SendToReport(Dispatch({}, "TestWk", ScaleBox, {Label Row(Show Major Grid(1))}))
),
tab = dt << Tabulate(Show Control Panel(0), Add Table(Row Table(Grouping Columns(:TestStage))))
)
)
);
Wenn dies nicht ausreicht, können Sie eine Schaltfläche hinzufügen, um die Tabelle in eine Datentabelle umzuwandeln (und die Tabelle bei Bedarf auszublenden).
Betreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?@jthi Danke, ich habe deinen Vorschlag für meinen konkreten Fall verstanden. Ich würde gerne noch zwei weitere Dinge kontrollieren, wenn das möglich ist.
Wie ändere ich das „N“ (blauer Pfeil) in der Tabelle in etwas wie „getestet“?
Wie entferne ich den Text unter dem Diagramm und der tabellarischen Tabelle (unten rot eingekreist)?
Und wie erhält man die Summe von „N“?

Betreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?Ich bin mir nicht sicher, wie ich das einfach vor tabulate verbergen kann, da es den Anschein macht, als würde es basierend auf etwas neu erstellt (wenn Sie eine zu große Where-Anweisung haben, fügt es sie wieder hinzu oder so etwas Seltsames). Sie können das mit einem Filteränderungshandler tun, aber ich würde versuchen, das so weit wie möglich zu vermeiden (ich würde lieber den Where-Text behalten, als damit herumzuspielen).
Names Default To Here(1);
dt = Open("$DOWNLOADS/example_DataTable.jmp");
nw = New Window("",
Data Filter Context Box(
H List Box(
dt << Data Filter(Local,
Add Filter(
columns(:TestWk),
Modeling Type(:TestWk, Nominal),
Where(
:TestWk == {19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}
),
Display(:TestWk, Find(Set Text("")))
)
),
gb = dt << Graph Builder(
Size(744, 332),
Show Control Panel(0),
Variables(X(:TestWk), Y(:Median), Group Y(:TestStage)),
Elements(
Points(X, Y, Legend(8)),
Caption Box(X, Y, Legend(10), Summary Statistic("N"))
),
SendToReport(Dispatch({}, "TestWk", ScaleBox, {Label Row(Show Major Grid(1))}))
),
tab = dt << Tabulate(
Change Item Label(Statistics(N, "Die tested")),
Show Control Panel(0),
Add Table(Column Table(Statistics(N)), Row Table(Grouping Columns(:TestStage)))
)
)
)
);
wait(0);
(nw << XPath("//TextBox[contains(text(), 'Where(')]")) << Visibility("Collapse");
Betreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?@jthi Danke, ich habe nichts gegen die Where-Anweisungen in JMP, aber beim Kopieren des Diagramms in andere Windows-Anwendungen hätte ich sie lieber nicht gehabt.
Ist es möglich, die Summe von „N“ (also die Gesamtzahl der getesteten Würfel) unterhalb der Tabelle anzuzeigen?
Betreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?Sie können zusätzliche V-List-Box hinzufügen, um den Graph Builder zu umschließen und zu tabellieren

Mehr sehen...
Names Default To Here(1);
dt = Open("$DOWNLOADS/example_DataTable.jmp");
nw = New Window("",
Data Filter Context Box(
H List Box(
dt << Data Filter(Local,
Add Filter(
columns(:TestWk),
Modeling Type(:TestWk, Nominal),
Where(
:TestWk == {19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}
),
Display(:TestWk, Find(Set Text("")))
)
),
V List Box(
gb = dt << Graph Builder(
Size(744, 332),
Show Control Panel(0),
Variables(X(:TestWk), Y(:Median), Group Y(:TestStage)),
Elements(
Points(X, Y, Legend(8)),
Caption Box(X, Y, Legend(10), Summary Statistic("N"))
),
SendToReport(Dispatch({}, "TestWk", ScaleBox, {Label Row(Show Major Grid(1))}))
),
)
)
)
);
Betreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?@jthi Danke, aber mit Ihrem Skript bekomme ich das V-List-Feld in meinem JMP 16 nicht.
Außerdem meine ich mit „Summe“ einen Wert von 14 (2+2+3+3+2+2), der in diesem Fall im Diagramm angezeigt wird.
Betreff: Wie erhalte ich Werte für Beschriftungsfelder in einer Datentabelle?Sie könnten hierfür separate Tabellen verwenden.

Mehr sehen...
Names Default To Here(1);
dt = Open("$DOWNLOADS/example_DataTable.jmp");
nw = New Window("",
Data Filter Context Box(
H List Box(
dt << Data Filter(Local,
Add Filter(
columns(:TestWk),
Modeling Type(:TestWk, Nominal),
Where(
:TestWk == {19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32}
),
Display(:TestWk, Find(Set Text("")))
)
),
V List Box(
gb = dt << Graph Builder(
Size(744, 332),
Show Control Panel(0),
Variables(X(:TestWk), Y(:Median), Group Y(:TestStage)),
Elements(
Points(X, Y, Legend(8)),
Caption Box(X, Y, Legend(10), Summary Statistic("N"))
),
SendToReport(Dispatch({}, "TestWk", ScaleBox, {Label Row(Show Major Grid(1))}))
),
tab2 = dt << Tabulate(Show Control Panel(0), Add Table(Column Table(Statistics(N))))
),
tab = dt << Tabulate(
Change Item Label(Statistics(N, "Die tested")),
Show Control Panel(0),
Add Table(Column Table(Statistics(N)), Row Table(Grouping Columns(:TestStage)))
)
)
)
);
wait(0);
(nw << XPath("//TextBox[contains(text(), 'Where(')]")) << Visibility("Collapse");