<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich versuche, einen zweistufigen Filter auszuführen, bei dem die Auswahl der Daten aus einem angezeigten Diagramm die Anzeige in einem zweiten Diagramm unterordnet und dann aus dem zweiten Diagramm ein drittes angezeigtes Diagramm auswählt.

Das obige ist ein teilweise erfolgreicher Versuch. Die dritte Anzeige ist eine Untermenge von Auswahlen aus den ersten 2 Anzeigen. Der zweite Filter wird jedoch vom ersten Graphen nicht richtig angezeigt. Unten ist der Code für den obigen Versuch:
Namensvorgabe bis hier (1);
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
Neues Fenster ("Shared Local Filter",
Datenfilterkontextfeld (
H Listenfeld (
Datenfilter-Quellfeld (
H Listenfeld (
Graph Builder (
Größe (208, 207),
Systemsteuerung anzeigen (0),
Legende anzeigen (0),
Variablen (X (: Alter)),
Elemente (Takt (X, Legende (3))),
SendToReport (Dispatch ({}, "Graph Builder", OutlineBox, {Set Title ("Filter")}))
)
Graph Builder (
Größe (208, 207),
Systemsteuerung anzeigen (0),
Legende anzeigen (0),
Variablen (X (: Geschlecht)),
Elemente (Takt (X, Legende (3))),
SendToReport (Dispatch ({}, "Graph Builder", OutlineBox, {Set Title ("Filter")}))
)
)
)
Plattform(
Tabelle der aktuellen Daten (),
Blasendiagramm (X (: Gewicht), Y (: Höhe), Größen (: Alter), Titelposition (0, 0))
)
)
)
);
Ich dachte, ich sollte in der Lage sein, ein neues Datenfilter-Kontextfeld für die erste Auswahl zu erstellen:
Namensvorgabe bis hier (1);
dt = Open ("$ SAMPLE_DATA / Big Class.jmp");
Neues Fenster ("Shared Local Filter",
Datenfilterkontextfeld (
H Listenfeld (
Datenfilter-Quellfeld (
Graph Builder (
Größe (208, 207),
Systemsteuerung anzeigen (0),
Legende anzeigen (0),
Variablen (X (: Alter)),
Elemente (Takt (X, Legende (3))),
SendToReport (Dispatch ({}, "Graph Builder", OutlineBox, {Set Title ("Filter")}))
)
)
Plattform(
Tabelle der aktuellen Daten (),
Datenfilterkontextfeld (
Graph Builder (
Größe (208, 207),
Systemsteuerung anzeigen (0),
Legende anzeigen (0),
Variablen (X (: Geschlecht)),
Elemente (Takt (X, Legende (3))),
SendToReport (Dispatch ({}, "Graph Builder", OutlineBox, {Set Title ("Filter")}))
)
Plattform(
Tabelle der aktuellen Daten (),
Blasendiagramm (X (: Gewicht), Y (: Höhe), Größen (: Alter), Titelposition (0, 0))
)
)
)
)
)
);
Es erstellt zwar den zweiten Filter, der vom ersten Filter unterschrieben wird, die 3. Anzeige wird jedoch nicht angezeigt.
Hat jemand eine Lösung dafür? Ich könnte den Code schreiben, um die Diagramme nach dem Erkennen der Änderungen neu zu generieren und erneut anzuzeigen, aber ich würde lieber die Data Filter Context Box-Lösung verwenden, wenn eine möglich ist.
Dan,
Es waren Ihre Filter-File-Exchange-Beispiele, die ich entdeckt hatte. Sie haben mir dabei geholfen, das Problem zu lösen.
Vielen Dank, dass Sie weiter verfolgen.
Jim
Ich bin froh, dass Sie eine Lösung gefunden haben. Nur um Dinge miteinander zu verknüpfen, ist eines der Dokumente mit Selection Filter-Beispielen Auswahlfilter in JMP verwenden 12 .
In Ihrem ersten Beispiel habe ich ein zweites Datenfilter-Quellfeld () hinzugefügt, um den Zwei-Ebenen-Filter zu erstellen:
Namensvorgabe bis hier ( 1 ) ;
dt = Öffnen ( "$ SAMPLE_DATA / Big Class.jmp" ) ;
Neues Fenster ( "Shared Local Filter" .
Datenfilterkontextfeld (
H Listenfeld (
Datenfilter-Quellfeld (
H Listenfeld (
Graph Builder (
Größe ( 208 . 207 ) .
Systemsteuerung anzeigen ( 0 ) .
Legende anzeigen ( 0 ) .
Variablen ( X ( : Alter ) ) .
Elemente ( Bar ( X . Legende ( 3 ) ) ) .
SendToReport ( Versand ( {} . "Graph Builder" . OutlineBox . { Titel einstellen ( "Filter" )} ) )
) .
Datenfilter-Quellfeld (
Graph Builder (
Größe ( 208 . 207 ) .
Systemsteuerung anzeigen ( 0 ) .
Legende anzeigen ( 0 ) .
Variablen ( X ( : Sex ) ) .
Elemente ( Bar ( X . Legende ( 3 ) ) ) .
SendToReport (
Versand ( {} . "Graph Builder" . OutlineBox . { Titel einstellen ( "Filter" )} )
)
)
)
)
) .
Plattform (
Aktuelle Datentabelle () .
Blasendiagramm ( X ( : Gewicht ) . Y ( : Höhe ) . Größen ( : Alter ) . Titelposition ( 0 . 0 ) )
)
)
)
) ;