Re: Hover Labels: inviare un filtro più preciso?Guida allo scripting > Grafici di scripting > Etichette al passaggio del mouse > Utilizzo del contesto di esecuzione delle etichette al passaggio del mouse è davvero utile con gli hoverlabel
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:sex), Y(:age), Color(:name)),
Elements(Points(X, Y, Legend(19))),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Textlet(
Setup(
local:encodedWhere = XML Encode(local:_where);
Show(Namespace("local") << Get Contents());
),
Markup(
"
<B>Groupings</B>: {local:_groupings}
<B>Measurements</B>: {local:_measurements}
<B>Summary statistic</B>: {local:_summaryStatistic}
<B>Filter columns</B>: {local:_filters}
<B>Where clause</B>: {local:encodedWhere}
<B>Graph type</B>: {local:_displaySegName}
<B>Data table</B> {local:_dataTable}
<B>Drill depth</B>: {local:_drillDepth}
<B>First Row</B>: {local:_firstRow}
<B>Underlying Rows</B>: {local:_underlyingRows}
"
)
)}
)
)
);
Se lo esegui e dai un'occhiata al registro, dovresti essere in grado di accedere al valore del nome
Namespace("local") << Get Contents() = {{"_filters", {:sex, :age}}, {"_mode", "Textlet"}, {"_where", ":sex == \!"F\!" & :age == 16"}, {"_age", 16}, {"_name", "MARION"}, {"_sex", "F"}, {"_groupings", {:sex, :age}}, {"_firstRow", 36}, {"_underlyingRows", 1}, {"_measurements", {}}, {"_displaySegName", "MarkerSeg"}, {"_dataTable", DataTable("Big Class")}, {"_summaryStatistic", ""}, {"_drillDepth", 1}, {"_xaxis", 0}, {"_yaxis", 0}, {"_customData", [=>]}, {"_localDataFilter", "Local Data Filter(
Close Outline(1),
Add Filter(columns(:sex, :age), Where(:sex == \!"F\!"), Where(:age == 16))
)"}, {"_whereExpr", :sex == "F" & :age == 16}, {"encodedWhere", ":sex == "F" & :age == 16"}};
ma non sono sicuro che tu possa (facilmente) forzare il filtro del nome nel grafico del plotter. Puoi rimuovere i filtri con Ignora filtro ma non hai idea di aggiungerli Guida allo scripting > Scripting di grafici > Etichette al passaggio del mouse > Aggiungere grafici o immagini alle etichette al passaggio del mouse utilizzando i graphlet . La soluzione alternativa per i sottoinsiemi è un'opzione
L'overlay ti permetterebbe di filtrare a quel livello, ma non è molto utile in quanto non puoi passare con il mouse su quel singolo punto ...
Re: Hover Labels: inviare un filtro più preciso?Intendo:
una soluzione che posso mostrare ai miei colleghi che hanno una licenza di prova di 30 giorni - per convincerli che Jmp è MOLTO utile e MOLTO facile.

Re: Hover Labels: inviare un filtro più preciso?Adattando il codice da Hover-graphlet-da-un-altro-data-tabl e#M55890 , Immagino che sarà qualcosa di simile al codice seguente, ma spero che sia disponibile una versione non JSL (2 clic?).
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
mainGB = dt << Graph Builder( Variables( X( :sex ), Y( :age ), Color( :name ) ), Elements( Points( X, Y, Legend( 19 ) ) ) );
Report( mainGB )["Graph Builder", FrameBox( 1 )] << Set Graphlet(
Picture(
getGraphlet = Function( {row},
{gb},
gb = Graph Builder( Variables( Y( :height ) ), Elements( Points( Y, Legend( 6 ) ) ) );
gb << Local Data Filter( Close Outline( 1 ), Add Filter( columns( :name ), Where( :name == :name[row] ) ) );
gb;
);
If( local:_mode == "Click",
New Window( "Wafer Graphlet", getGraphlet( local:_firstRow ) );
Empty();
,
plt = Platform( local:_dataTable, gb = getGraphlet( local:_firstRow ) );
Picture Box( (gb << report)[Picture Box( 1 )] << Get Picture( 0.5 ) );
);
),
Skip Filters( 1 )
);Re: Hover Labels: inviare un filtro più preciso?@nascif_jmp ?
Etichette al passaggio del mouse: inviare un filtro più preciso?Voglio generare un graphlet al passaggio del mouse da un'altra tabella di dati seguendo una ricetta fornito di @nascif_jmp .
Il problema che sto affrontando può essere riprodotto con una singola tabella di dati.
L'esempio seguente sembra estremamente noioso: "perché vuole tracciare un singolo punto?!?"
... ma ha senso quando vengono utilizzate due diverse tabelle di dati [tabella di dati principale con valori mediani, grafico al passaggio del mouse con valori individuali] 
Quando si passa con il mouse su un punto dati, desidero che il graphlet al passaggio del mouse sia limitato ai dati corrispondenti esattamente al singolo punto dati.
il mio problema: il punto dati non è completamente descritto dalle colonne utilizzate per l'asse x e y. Nell'esempio.
[Utilizzo il sesso e l'età sugli assi che portano a diversi punti dati per ogni sesso ed età.]
Il passaggio del mouse su uno dei punti dati limita solo il grafico al passaggio del mouse per sesso ed età, ma non al singolo punto dati (che potrei ottenere tramite nome, ecc.).
Quindi, come ottenere una specifica più precisa del punto dati oltre l'asse x/y, senza influire sul grafico principale?
Ho provato a utilizzare Colore o Dimensione, ma queste impostazioni vengono semplicemente ignorate da Hover Label Framework.
C'è un modo per dire a Hover Label Framework di reindirizzare un filtro di colonna aggiuntivo all'Hover Label, senza modificare il grafico principale?
2 punti invece di a punto singolo [corrispondente alle voci nell'etichetta al passaggio del mouse Griglia: Mario , Fa, 16]:

dt = Open( "$SAMPLE_DATA/Big Class.jmp" );<BR />dt << Graph Builder(
Variables( X( :sex ), Y( :age ), Color( :name ) ),
Elements( Points( X, Y, Legend( 19 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Graphlet(
Picture(
Graph Builder(
Variables( Y( :height ) ),
Elements( Points( Y, Legend( 6 ) ) )
)
)
)}
)
)
)
Personalizzazione di massaRe: Hover Labels: inviare un filtro più preciso?Carino.È anche meglio di quello che ti ho mandato.Anch'io ho imparato qualcosa.A proposito, dovresti aggiungere il nome dello spazio dei nomi prima dei due punti (:) o rimuovere i due punti davanti a _name.È una variabile nello spazio dei nomi locale, non una colonna.
local:_name
// or simply
_name
Re: Hover Labels: inviare un filtro più preciso?Molto più facile di quanto temessi...
Ho appena imparato un trucco fantastico da @Jasean :
limitare il grafico al passaggio del mouse tramite " Dove"
Quindi si può iniziare con @jthi i risultati di:
https://community.jmp.com/t5/Discussions/Hover-Labels-send-a-more-precise-filter/mp/612705/highlight/true#M81282.
Tutto quello che devi fare è aggiungere (modifica *)
Where( :name == local:_name )
O
Where( :name == _name )
*) ma no Dove( :nome == :_nome ) !
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Graph Builder(
Variables( X( :sex ), Y( :age ), Color( :name ) ),
Elements( Points( X, Y, Legend( 19 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Graphlet(
Picture(
Graph Builder(
Variables( Y( :height ) ),
Elements( Points( Y, Legend( 6 ) ) ),
Where( :name == local:_name )
)
)
)}
)
)
);