Puis-je obtenir les paramètres de l'axe X sélectionnés par le filtre de données local (dans le générateur de graphiques) dans une liste ?Je souhaite que les paramètres de l'axe X (dans le générateur de graphiques) soient sélectionnés par ma sélection de filtre de données local sous forme de liste à utiliser dans un autre script. Est-il possible de le faire via JSL ?
Automatisation et scriptsles fenêtresRe : Puis-je obtenir les paramètres de l'axe X sélectionnés par le filtre de données local (dans le générateur de graphiques) dans une liste ?Oui. Vous pouvez utiliser par exemple << Obtenir les lignes filtrées puis sélectionner les valeurs qui vous intéressent en fonction de celles de la bonne colonne (lorsque rien n'est filtré, c'est un cas particulier dont vous devrez peut-être vous occuper).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Cities.jmp");
gb = dt << Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:Latitude), Y(:POP)),
Elements(Points(X, Y, Legend(7)), Smoother(X, Y, Legend(8)))
);
f = gb << Local Data Filter(
Add Filter(
columns(:city),
Where(
:city == {"ALBANY", "ALBUQUERQUE", "ATLANTA", "ATLANTIC CITY",
"BALTIMORE", "BOSTON", "BURLINGTON"}
),
Display(:city, N Items(15), Find(Set Text("")))
)
);
f << get filtered rows;Re : Puis-je obtenir les paramètres de l'axe X sélectionnés par le filtre de données local (dans le générateur de graphiques) dans une liste ?@jthi Merci.
Cela donne l'index de la ligne. Comment obtenir les latitudes réelles (boucler la colonne via f) ?
Deuxièmement, comment obtenir de nouvelles valeurs « f » si la sélection du filtre de données local est modifiée par l'utilisateur (je pense au gestionnaire de changement de filtre, mais je n'ai jamais réussi à le faire fonctionner comme souhaité) ?
Re : Puis-je obtenir les paramètres de l'axe X sélectionnés par le filtre de données local (dans le générateur de graphiques) dans une liste ?<< Obtenir les lignes filtrées vous renvoie une matrice de lignes sélectionnées, vous pouvez utiliser cette matrice pour accéder aux valeurs du tableau (et des colonnes). Une option est
:Latitude[f << get filtered rows];
Inscription aux tables de données peut également être utile.
Je ne sais pas ce que vous faites donc il est un peu difficile de donner des conseils sur la deuxième question (gestionnaire de changement de filtre ou utilisation d'un bouton très probablement).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Cities.jmp");
gb = dt << Graph Builder(
Size(534, 456),
Show Control Panel(0),
Variables(X(:Latitude), Y(:POP)),
Elements(Points(X, Y, Legend(7)), Smoother(X, Y, Legend(8)))
);
f = gb << Local Data Filter(
Add Filter(
columns(:city),
Where(
:city == {"ALBANY", "ALBUQUERQUE", "ATLANTA", "ATLANTIC CITY",
"BALTIMORE", "BOSTON", "BURLINGTON"}
),
Display(:city, N Items(15), Find(Set Text("")))
)
);
filter_f = Function({a}, show(:Latitude[f << get filtered rows]));
rs = f << Make Filter Change Handler(filter_f);
Re : Puis-je obtenir les paramètres de l'axe X sélectionnés par le filtre de données local (dans le générateur de graphiques) dans une liste ?Vous pouvez également récupérer les spécificités des axes X et Y, en demandant d'obtenir les Min, Max, Incr.Voici une modification qui récupère la valeur Maximum de l'axe Y
filter_f = Function({a}, show(:Latitude[f << get filtered rows]);
show("Max", report(gb)[axisbox(2)]<<GET max=""></GET>