Survolez l'étiquette : plus d'une parcelle ?Est-il possible d'afficher plusieurs tracés dans l'étiquette de survol ?
Je l'ai essayé en mettant deux tracés dans une liste H, mais j'ai remarqué que
- l'étiquette de survol montre simplement le premier tracé
- après avoir cliqué sur l'étiquette de survol, les deux tracés apparaissent, mais le filtre de données n'est pas appliqué au deuxième tracé :


Voir plus...dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Graph Builder(
Size( 401, 369 ),
Show Control Panel( 0 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), color( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Graphlet(
Picture(
H List Box(
Graph Builder(
Show Control Panel( 0 ),
Lock Scales( 1 ),
Variables( X( :sex ), Y( :age ), color(:sex) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) )
),
Graph Builder(
Show Control Panel( 0 ),
Variables( X( :sex ), Y( :height ), color(:sex) ),
Elements( Bar( X, Y, Legend( 6 ) ) )
)
)
)
)}
)
)
) Ingénierie Qualité et ProcédésRe : Hover Label : plusieurs parcelles ?D'ailleurs:
J'ai généré la deuxième sous-parcelle directement y compris le filtre de données depuis le début.
La première sous-parcelle obtient le DataFilter via le Hover Label Framework - après en cours d'initialisation sans filtre de données.
Cela me rappelle un autre sujet :
https://community.jmp.com/t5/Discussions/speeding-up-heatmap-graphs/mp/571277/highlight/true#M78103
Et en effet, Jmp 16 et Jmp17 se comportent différemment ici :
Sur Jmp16, le filtre de données est toujours ajouté après l'initialisation du graphe - même si le filtre de données fait partie du code Graph Builder.
Par conséquent, pour les deux tracés, la plage est verrouillée via Verrouiller les balances( 1 ) à toute la gamme -> les deux tracés se ressemblent.
Sur Jmp17, si le filtre de données fait partie du code GraphBuilder (deuxième graphique), le filtre de données est ajouté immédiatement.
Par conséquent, les plages d'axes du deuxième graphique sont limitées aux données filtrées.
-> nouveau: Si nécessaire, il faut spécifier manuellement les plages d'axes.
Jmp 17 :

Jmp 16

Re : Hover Label : plusieurs parcelles ?Aïe, oui.
Donc, le _whereExpr n'était pas le problème réel
--> problème réel résolu via Substitute
Voir plus... Re : Hover Label : plusieurs parcelles ?Très probablement, votre _whereExpr est évalué et renvoie la valeur manquante.
Re : Hover Label : plusieurs parcelles ?Hm, comment accéder au local :_whereExpr
Je suppose, une erreur assez simple, mais je ne la trouve pas...
Voir plus...Graph Builder(
Size( 401, 369 ),
Show Control Panel( 0 ),
Graph Spacing( 4 ),
Variables( X( :height ), Y( :weight ), color( :sex ) ),
Elements( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Graphlet(
Picture(
Show( Namespace( "local" ) << Get Contents() ); //contains :_whereExpr
Show(local:_whereExpr); // empty ?!?
Eval(Eval Expr(
Data Filter Context Box(
H List Box(
Current Data Table() << DataFilter( Local, Add Filter( columns( :height, :weight ), Where( Expr(Name Expr(local:_whereExpr)) )
) ),
Graph Builder(
Show Control Panel( 0 ),
Lock Scales( 1 ),
Graph Spacing( 4 ),
Variables( X( :sex ), Y( :age ), Color( :sex ) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) )
),
Graph Builder(
Show Control Panel( 0 ),
Lock Scales( 1 ),
Graph Spacing( 4 ),
Variables( X( :sex ), Y( :age ), Color( :sex ) ),
Elements( Heatmap( X, Y, Legend( 5 ) ) )
);
)
)))
)
)}
)
)
);Générateur de graphiques( Taille( 401, 369 ), Afficher le panneau de configuration( 0 ), Espacement des graphiques( 4 ), Variables( X( :hauteur ), Y( :poids ), couleur( :sexe ) ), Éléments( Points( X, Y, Legend( 1 ) ), Smoother( X, Y, Legend( 2 ) ) ), SendToReport( Dispatch( {}, "Graph Builder", FrameBox, {Set Graphlet( Picture( Show( Namespace( "local") ) < < Get Contents() ); // contient :_whereExpr Show(local:_whereExpr); // vide ?!? Eval(Eval Expr( Data Filter Context Box( H List Box( Current Data Table() << DataFilter( Local, Add Filter( columns( :height, :weight ), Where( Expr(Name Expr(local:_whereExpr)) ) ) ), Générateur de graphiques (Afficher le panneau de configuration ( 0 ), Verrouiller les échelles ( 1 ), Espacement des graphiques ( 4 ), Variables ( X ( : sexe ), Y ( : âge ), Couleur ( : sexe ) ), Éléments ( Heatmap ( X, Y, Legend( 5 ) ) ) ), Graph Builder( Show Control Panel( 0 ), Lock Scales( 1 ), Graph Spacing( 4 ), Variables( X( :sex ), Y( :age ), Color( :sex ) ), Elements( Heatmap( X, Y, Legend( 5 ) ) ) ); ) ))) ) )} ) ) );
Re : Hover Label : plusieurs parcelles ?Ce n'est peut-être pas facile à faire (du moins pas avec des graphiques simples, vous pouvez cependant utiliser des images). Les étiquettes de survol ont une assez bonne documentation sur le site d'aide de JMP
Guide de script > Graphes de script > Étiquettes de survol > Ajouter des graphiques ou des images aux étiquettes de survol à l'aide de graphlets
Commandes de graphlet
Image
Un script obligatoire qui ajoute une miniature d'un graphique ou d'une image à l'étiquette de survol.
Image() est toujours exécuté dans un contexte d'exécution d'étiquette de survol dérivé de l'élément visuel actuel. La première Boîte d'image (en dehors d'un filtre de données local) trouvé sera utilisé pour générer l'image affichée.
Plus de documentation Utilisation de JMP > Rapports JMP > Personnaliser les étiquettes de survol dans les graphiques JMP
Re : Hover Label : plus d'une parcelle ?peut-être, parfois c'est exactement ce que veut l'utilisateur :
- afficher un seul graphique avec le filtre "survol" appliqué
- et quand vous cliquez dessus :
- ouvrir le même graphique
- plus un deuxième graphique "statique" - sans filtre "survol" appliqué
Si tel est le cas, on pourrait appeler ce bug une fonctionnalité.
Dans Graph-Builder-30-Second-Challenge, @martindemel montre qu'il n'est même pas nécessaire d'avoir une zone de liste H/V environnante.