CIAO,
Voglio usare JSL per generare un report (.ppt).
Ci sono 2 grafici che voglio esportare: 5 gruppi e 3 gruppi.
Voglio che ogni gruppo abbia 250*250, quindi il grafico di 5 gruppi dovrebbe essere 1250*250 e quello di 3 gruppi dovrebbe essere 750*250.
Utilizzo Salva presentazione per esportare i grafici.
La dimensione di 5 gruppi è la stessa di quella di esportazione manuale dei grafici, ma quella di 3 gruppi no. La dimensione di 3 gruppi è ridotta solo del 75%.
Come posso esportare più grafici con la stessa scala e risoluzione?
NonLeakage_graph = dt << Graph Builder(
Size( 1250, 250 ),
Variables( X( :Lot ), Y( :drift% ), Group X( :Label ), Color( :Lot ) ),
Elements( Box Plot( X, Y, Legend( 1 ) ) ),
By( :Rel_Test ),
SendToReport(
Dispatch( {}, "drift%", ScaleBox,
{Format( "Percent", 12, 0 ), Min( -0.25 ), Max( 0.25 ), Inc( 0.05 ),
Minor Ticks( 0 ), Add Ref Line( 0.2, "Solid", "Red", "20%", 1 ),
Add Ref Line( -0.2, "Solid", "Red", "-20%", 1 )}
)
)
);
NonLeakage = NonLeakage_graph << Report;
save_path = "D:\Reliability Qual\reliability report template\jmp_example.pptx";
For( i = 1, i <= N Items( NonLeakage ), i++,
If( File Exists( save_path ),
NonLeakage[i] << Save Presentation( save_path, Append );
,
NonLeakage[i] << Save Presentation( save_path );
)
);
NonLeakage << Close Window;
dt << Clear Row States;
dt << Select Where( (Contains( {"0cyc", "0hrs"}, :ReadPoint )) | (!Contains( {"IGSS", "IGSSR", "IDSS"}, :Label )) );
dt << Hide( 1 ) << Exclude( 1 );
dt << Clear Selection;
dt << Select Where( (!Contains( {"0cyc", "0hrs"}, :ReadPoint )) & (Contains( {"IGSS", "IGSSR", "IDSS"}, :Label )) );
Summarize( dt, l_groups = By( :Rel_Test ) );
Leakage_graph=dt << Graph Builder(
SendToByGroup( {:Rel_Test == "H3TRB"} ),
Size( 750, 250 ),
Variables( X( :Lot ), Y( :drift% ), Group X( :Label ), Color( :Lot ) ),
Elements( Box Plot( X, Y, Legend( 1 ) ) ),
By( :Rel_Test ),
SendToReport(
Dispatch( {}, "drift%", ScaleBox,
{Format( "Fixed Dec", 12, 0 ), Min( 0 ), Max( 20 ), Inc( 5 ),
Minor Ticks( 0 ), Add Ref Line( 10, "Solid", "Red", "10", 1 )}
)
)
);
Leakage = Leakage_graph << Report;
Leakage << Save Presentation( "D:\Reliability Qual\reliability report template\jmp_example.pptx",append );
Ciao,
Questo non funziona. Tutto sembra a posto in JMP, ma dopo l'esportazione in PPT, le scale dei grafici sono diverse.
Ciao @LT ,
Sembra che tu abbia ragione. Tuttavia, il problema non è dove pensavo.
Grazie ai suggerimenti contenuti nel primo link, puoi ottenere molto, anche più di quanto pensassi possibile quando ho scritto la mia prima risposta.
Questo codice crea grafici con le proporzioni richieste:
Tre fotogrammi con 250x250 -> 750x250
e cinque frame con 250x250 -> 1250x250.
Quando copi i grafici negli appunti e li incolli in un programma di grafica, puoi vedere che tutti i sottografici hanno le stesse dimensioni.
Il codice evidenzia anche il problema reale:
indipendentemente dalle dimensioni dell'immagine PNG o JPG, è possibile ridimensionarla nella presentazione in base ad alcune regole nascoste.
Temo che la funzione << salva presentazione non consenta all'utente di modificare queste regole.
Una soluzione alternativa: è possibile utilizzare uno scripting (ad esempio tramite l'interfaccia Python in JMP) per specificare le dimensioni e la posizione dei grafici inseriti nella presentazione.
In alternativa, puoi inviare un'e-mail a support@jmp.com per ulteriori suggerimenti.
Forse c'è un'impostazione nascosta in << salva presentazione ...
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
fn = "$TEMP/jmp_example.pptx"
biv = bivariate( y( :weight ), x( :height ) );
rbiv = biv << report;
rbiv << Save Presentation(fn );
For each( {selection}, {{13, 14, 15}, {13, 14, 15, 16, 17}},
Eval(
Eval Expr(
gb = Graph Builder(
Fit to Window( "Off" ),
Variables(
X( :height ),
Y( :weight ),
Group X( :age ),
Overlay( :age )
),
Elements(
Points( X, Y ),
Smoother( X, Y )
),
Local Data Filter(
Conditional,
Add Filter(
columns( :age ),
Where( :age == Expr( selection ) )
)
)
)
)
);
fb = Report( gb )[FrameBox( 1 )];
fb << Frame size( 250, 250 );
// show(fb << get size);
gb << save presentation( fn, Append );
);
Web( fn );