Identification des titres des titres de page du générateur de graphiquesDans le graphique suivant, je veux pouvoir identifier les titres des pages :

c'est-à-dire "sexe = F" et "sexe = M".
En regardant l'arbre d'affichage, il semblerait que les titres soient associés à une boîte d'affichage de type GraphBuilderGroupBox :

J'ai le script suivant :
Open("$SAMPLE_DATA/Big Class.jmp");
gb = Graph Builder(
Size( 378, 714 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :height ), Y( :weight ), Page( :sex ) ),
Elements( Points( X, Y, Legend( 8 ) ), Smoother( X, Y, Legend( 9 ) ) )
);
rep = gb << report;
lst = rep << xpath("//GraphBuilderGroupBox");
for (i=1,i<=nitems(lst),i++,
title = lst[i] << get text;
)
Malheureusement, cela ne fonctionne pas (titre = "" pour les deux pages).
Est-ce que quelqu'un a des suggestions?
Merci,
David
GraphiqueScriptRe : Identification des titres des titres de page du générateur de graphiquesC'est un élément auquel je n'ai pas compris comment accéder directement avec la couche de rapport ou Xpath //GraphBuilderGroupBox << Obtenir le problème du titre de la fenêtre . Je ne sais pas s'ils pourraient être construits d'une manière ou d'une autre en utilisant Get Variables
Open("$SAMPLE_DATA/Big Class.jmp");
gb = Graph Builder(
Size( 378, 714 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :height ), Y( :weight ), Page( :sex ) ),
Elements( Points( X, Y, Legend( 8 ) ), Smoother( X, Y, Legend( 9 ) ) )
);
gbb = Report(gb)[Graph Builder Box(1)];
Show(gbb << get variables);
Show(gbb << get variable(1));Re : Identification des titres des titres de page du générateur de graphiquesWow! C'est une boîte peu coopérative ! Essayez d'utiliser rep<
@XanGregg la boîte en question se transforme en quelque chose de plus convivial lorsqu'elle est journalisée. Mais isolément, dans le générateur de graphiques en direct, il ne dira rien sur lui-même.
Re : Identification des titres des titres de page du générateur de graphiquesPour les variables de page, de groupe et d'enveloppe, vous pouvez définir une propriété de colonne définissant l'ordre des valeurs, puis l'utiliser pour être sûr de quel tracé est lequel.Je veux souvent changer les noms de colonne ou de niveau de toute façon et maintenant tout cela peut être fait dans une colonne de transformation :
Open("$SAMPLE_DATA/Big Class.jmp");
pageOrder = {"Female", "Male"};
Eval( Eval Expr(
gb = Graph Builder(
Size( 378, 714 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables(
X( :height ),
Y( :weight ),
Page( Transform Column( "Respondent Sex", Nominal, Set Property("Value Order", {Custom Order( Expr( pageOrder ))}), Formula( if(:sex=="M", "Male", "Female" ) ) ) )
),
Elements( Points( X, Y, Legend( 8 ) ), Smoother( X, Y, Legend( 9 ) ) )
)
) );
Note latérale : le GraphBuilderGroupBox que vous avez référencé ne contient probablement pas ce texte, notez que si vous définissez la visibilité sur masqué, l'en-tête est toujours là. Je pense que cet élément n'apparaît tout simplement pas dans l'arborescence, un peu comme la façon dont les points individuels n'y sont pas.Ce serait bien si les deux étaient accessibles !
Re : Identification des titres des titres de page du générateur de graphiquesMerci pour cette proposition @ih . La raison spécifique de vouloir obtenir les titres des pages est que je ne connais pas à l'avance la liste des valeurs potentielles (c'est-à-dire pageOrder dans cet exemple).Dans l'exemple du monde réel, le graphique a plus de 400 pages (ne me demandez pas pourquoi quelqu'un veut un graphique de cette taille !) Et le nombre de pages change en raison d'un filtre de données local.Si tout le reste échoue, je recommencerai à essayer de construire cette liste - pour ma première tentative, ma liste contenait environ 460 éléments et le graphique n'avait que 407 pages - certaines combinaisons ont peut-être été exclues en raison de données manquantes - je n'ai pas enquêté là-dessus encore - essayant toujours de trouver le chemin de la moindre résistance !
Re : Identification des titres des titres de page du générateur de graphiquesMerci @Craige_Hales - semble que ce sera une solution viable.