Comment obtenir les éléments sélectionnés dans le filtre de données locales(JMP 17) Lors de l'analyse, il est parfois nécessaire d'effectuer une analyse automatisée en fonction du contenu filtré localement dans l'outil de création de graphiques. Cependant, je ne sais pas comment récupérer ce contenu. Existe-t-il une méthode appropriée ? Merci.
Automatisation et scriptageRe : Comment obtenir les éléments sélectionnés dans le filtre de données localHabituellement, j'utilise << Obtenir la clause WHERE ou << Obtenir les lignes filtrées car les sélections effectuées peuvent être assez complexes.
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(525, 454),
Show Control Panel(0),
Variables(X(:weight), Y(:height), Overlay(:sex)),
Elements(Points(X, Y, Legend(9)), Smoother(X, Y, Legend(10)))
);
ldf = gb << Local Data Filter(
Add Filter(columns(:age), Where(:age == 12), Display(:age, N Items(6)))
);
Show(ldf << Get Where Clause);
Show(ldf << Get Filtered Rows);
Vous pouvez également accéder à la boîte d'affichage et l'utiliser ; par exemple, dans mon exemple, il s'agit de la boîte de liste (affichage de liste), mais en général, j'éviterais cette option.
nw = (gb << top parent);
nw[OutlineBox("Local Data Filter"), ListBoxBox(1)] << get selected;
Re : Comment obtenir les éléments sélectionnés dans le filtre de données localSelon ce que vous entendez par « analyse automatisée correspondante », une autre approche pourrait être :
Filtre de données locales -> Triangle rouge -> Afficher le sous-ensemble
Cela ouvre un sous-ensemble lié de vos données. Vous pouvez ensuite effectuer votre analyse à partir de là. Ou, si vous sélectionnez tout (Ctrl+A) à partir de là, cela sélectionnera également ces lignes dans votre tableau de données parent.
Par ailleurs, vous pouvez également enregistrer la clause WHERE depuis le même menu déroulant. Cela peut s'avérer utile si vous souhaitez réutiliser ce filtre ultérieurement.
Re : Comment obtenir les éléments sélectionnés dans le filtre de données localMerci beaucoup. C'est exactement ce que je voulais !
J'ai une nouvelle question : comment puis-je utiliser JSL pour détecter les changements de sélection au sein d'un filtre de données local ?
(J'ai créé une interface personnalisée où la partie supérieure est le générateur de graphiques et la partie inférieure un tableau de données, et je souhaite que le formulaire ci-dessous se mette à jour de manière synchrone lorsque la sélection du filtre change. Je dois donc savoir comment déterminer quand la sélection du filtre a été modifiée.)
Merci.
Re : Comment obtenir les éléments sélectionnés dans le filtre de données localConsultez la section Filtre de données de l'index des scripts pour avoir une bonne idée générale des options disponibles.

Dans ce cas, vous opteriez très probablement pour << Créer un gestionnaire de changement de filtre.
Vous pouvez également envisager d'utiliser un filtre de données (global) au lieu d'un filtre de données local ; il apportera directement les modifications d'état de la ligne à la table de données.