Graph Builder y=x Linea non legata a un grafico specificoSto cercando di lavorare in Graph Builder per creare una linea con JSL di correlazione perfetta (y=x) per lo scatterplot. Vedi sotto usando i dati campione di Restaurant Tips come esempio.

Quando lo faccio manualmente, ecco lo script generato da JMP:
Graph Builder(
Graph Spacing( 10 ),
Spacing Borders( 1 ),
Variables( X( :Bill Amount ), Y( :Tip Amount ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
SendToReport(
Dispatch( {}, "Tip Amount", ScaleBox,
{Min( -0.062875 ), Max( 72.9215829464286 ), Inc( 10 ), Minor Ticks( 1 )}
),
Dispatch( {}, "Graph Builder", FrameBox,
{Add Graphics Script(
2,
Description( "" ),
Pen Color( "red" );
Y Function( x, x );
)}
)
)
);Si noti che ciò è legato a questo grafico specifico.
Come posso rendere questo universale da applicare a qualsiasi grafico di Graph Builder su cui sto lavorando? Il mio obiettivo finale è di renderlo un componente aggiuntivo o meglio ancora un pulsante su Graph Builder (se possibile) per tracciare questa linea per qualsiasi grafico su cui sto lavorando.
C'è un vecchio video e alcune vecchie informazioni nella Community su questo, ma tutto quello che sono riuscito a trovare è legato a un grafico specifico. Penso che forse non capisco molto bene frame box. Ho provato alcune varianti di scripting usando frame box ma non sono arrivato da nessuna parte.
Grazie come sempre per qualsiasi aiuto.
Automazione e scriptingMac OSRe: Graph Builder y=x Line non collegato a un grafico specificoLa mia applicazione specifica è che spesso devo confrontare dati da sensori ridondanti che idealmente dovrebbero fornire dati perfettamente ridondanti. Naturalmente, la realtà interviene e spesso non è così. Quindi uno scatterplot con la linea y=x è il mio modo rapido per valutare i dati dai due sensori.
Re: Graph Builder y=x Line non collegato a un grafico specificoOttima idea! La uso tantissimo spesso!
-> Lo aggiungerò alla barra degli strumenti di Graph Builder : )
fbs = current report() << xpath("//FrameBox");
fbs << Add Graphics Script(
Pen Color( "gray" );
Y Function( x, x );
)
Re: Graph Builder y=x Line non collegato a un grafico specificoQuesto metodo dovrebbe permetterti di fare ciò che vuoi
names default to here(1);
dt =
// Open Data Table: Restaurant Tips.jmp
// → Data Table( "Restaurant Tips" )
Open( "$SAMPLE_DATA/Restaurant Tips.jmp" );
Graph Builder(
Graph Spacing( 10 ),
Spacing Borders( 1 ),
Variables( X( :Bill Amount ), Y( :Tip Amount ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
SendToReport(
Dispatch( {}, "Tip Amount", ScaleBox,
{Min( -0.062875 ), Max( 72.9215829464286 ), Inc( 10 ), Minor Ticks( 1 )}
)
)
);
rpt = Current Report();
rpt[framebox( 1 )] << Add Graphics Script(
2,
Description( "" ),
Pen Color( "red" );
Y Function( x, x );
);

Re: Graph Builder y=x Line non collegato a un grafico specificoGrazie @hogi e @txnelson . Ancora una volta siete venuti in soccorso.
@hogi Purtroppo lavoro su un Mac e non sembra che il tuo componente aggiuntivo funzioni su un Mac. Peccato. Sembra fantastico.
@txnelson (o in realtà uno di voi due...) Ho una domanda sul comando Add Graphics Script che hai usato, che ha la stessa sintassi dello script JMP generato. Se non si va troppo nei dettagli, qual è lo scopo del 2 argomento? La documentazione sul comando Add Graphics Script è molto approssimativa.
Grazie ancora.
Re: Graph Builder y=x Line non collegato a un grafico specificoÈ la posizione dello script, quindi puoi forzare l'ordine in cui vengono disegnati
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:weight), Y(:height), Overlay(:sex)),
Elements(Points(X, Y, Legend(9)), Line Of Fit(X, Y, Legend(11)))
);
Report(gb)[FrameBox(1)] << Add Graphics Script(
1,
Fill Color("Red");
Circle(
20,
{20, 20},
{50, 50},
{70, 80},
"FILL"
)
);
Report(gb)[FrameBox(1)] << Add Graphics Script(
2,
Circle(
20,
{40, 20},
{40, 50},
{40, 80},
"FILL"
)
);
Come vedi nel menu personalizzato

Modifica: Specificare l'ordine degli elementi grafici (jmp.com)
Re: Graph Builder y=x Line non collegato a un grafico specifico
@hogi ha scritto:
Ottima idea! La uso tantissimo spesso!
-> Lo aggiungerò alla barra degli strumenti di Graph Builder : )
disponibile ora:
