Ciao, sono un principiante di jsl . Ho una domanda sull'impostazione delle dimensioni dell'immagine durante il salvataggio in PPT.
Lo script sottostante funziona quando stavo cercando di salvare un grafico bivariato.
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = bivariate( y( :weight ), x( :height ), Group By(:sex), Fit Line({report(0)}) );
rbiv = biv << report;
rbiv[Framebox(1)] << row legend(:sex, color(1), marker(1));
rbiv << Save Presentation( "$TEMP/jmp_example.pptx");
rbiv[Framebox(1)] << frame size(1500,480);
rbiv << Save Presentation( "$TEMP/jmp_example.pptx", append );
Open( "$TEMP/jmp_example.pptx" );
Tuttavia, quando stavo cercando di salvare un grafico dal generatore di grafici, lo script sottostante sembra non funzionare.
Pertanto, la mia domanda è come impostare la dimensione del grafico durante l'esportazione in PPT da JSL, specialmente nel grafico dal generatore di grafici.
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv =Graph Builder(
Size( 755, 297 ),
Show Control Panel( 0 ),
Variables( X( :age ), Y( :height ) ),
Elements( Bar( X, Y, Legend( 4 ) ) )
);
rbiv = biv << report;
rbiv[Framebox(1)] << row legend(:sex, color(1), marker(1));
rbiv << Save Presentation( "$TEMP/jmp_example.pptx");
rbiv[Framebox(1)] << frame size(1400, 600);
rbiv << Save Presentation( "$TEMP/jmp_example.pptx", append );
Open( "$TEMP/jmp_example.pptx" );
Ciao @LIANGYAHAN , grazie per l'esempio facilmente riproducibile.
Sembra che tu abbia colpito una delle parti più difficili da duplicare di JMP, ovvero quando un messaggio viene inviato a un oggetto che non è ancora stato creato. Un'istruzione wait(0) risolverà spesso i casi in cui qualcosa funziona come previsto in modo interattivo quando si esegue una riga alla volta (come fa questa) ma non funziona quando viene eseguita tutta insieme.In questo caso, aggiungendo un Wait(0); prima che il messaggio sulla dimensione del frame risolva il tuo problema.
La funzione di attesa consentirà a JMP di disegnare tutti gli elementi e di "recuperare" il punto in cui ti troveresti se eseguissi una riga alla volta in modo interattivo.
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Big Class.jmp" );
biv =Graph Builder(
Size( 755, 297 ),
Show Control Panel( 0 ),
Variables( X( :age ), Y( :height ) ),
Elements( Bar( X, Y, Legend( 4 ) ) )
);
rbiv = biv << report;
rbiv[Framebox(1)] << row legend(:sex, color(1), marker(1));
rbiv << Save Presentation( "$TEMP/jmp_example2.pptx");
wait(0);
rbiv[Framebox(1)] << frame size(1400, 600);
rbiv << Save Presentation( "$TEMP/jmp_example2.pptx", append );
Open( "$TEMP/jmp_example2.pptx" );