Aggiunta di più caselle grafiche a una singola finestra senza che vengano copiate l'appendice più recenteSto cercando di creare una finestra con diverse caselle grafiche aggiunte per aiutare a visualizzare i dati che sto elaborando. L'installazione che ho è simile a questa.
thisWindow = new window("Test Window");
for(x = 1, x <=nitems(thingsToDraw), x++,
thisWindow << append(
graph box(
(setup of X and Y axis, scales and such)
(for loops that create dynamic shapes in the graph box)
);
);
);Il problema è che ogni volta che si aggiunge una nuova finestra del grafico, cambia tutte le precedenti caselle del grafico in modo che corrispondano a quella nuova. Sono sicuro che c'è un modo per isolare le caselle grafiche in modo che smettano di aggiornarsi dopo averle aggiunte nuove, ma non riesco a capirlo. Se rendo le scatole tutte uniche per dimensionamento e configurazione, non sembrano copiarsi. Ma questo sconfigge lo scopo del loop e il motivo per cui sto cercando di crearli in primo luogo. Ho provato a configurarlo come una funzione e chiamarlo, nonché impostarlo come un'espressione valutata al volo. Entrambi i risultati sono uguali.
Sto usando JMP 14.
Ri: Aggiungendo più caselle grafiche a una singola finestra senza che vengano copiate le append più recentiScommetto che tutti i tuoi script grafici usano le stesse variabili e che tu cambi il valore in queste variabili ad ogni iterazione. In tal caso, tutti i grafici verranno ridisegnati con i nuovi valori. È necessario convertire la variabile in un valore letterale per ogni script grafico.
Ri: Aggiungendo più caselle grafiche a una singola finestra senza che vengano copiate le append più recentiEcco una soluzione semplice. Non copia la finestra del grafico () nella finestra di output, ma copia un'immagine della finestra del grafico.
thisWindow = new window("Test Window");
for(x = 1, x <=nitems(thingsToDraw), x++,
thisWindow << append(
graph box(
(setup of X and Y axis, scales and such)
(for loops that create dynamic shapes in the graph box)
)<<GET picture=""></GET>Ri: Aggiungendo più caselle grafiche a una singola finestra senza che vengano copiate le append più recentiQuesto esempio dimostra l'approccio che ho suggerito.
Names Default to Here( 1 );
nw = New Window( "Multiple Plots",
vlb = V List Box()
);
a = [ 1, 2, 3, 4 ];
b = [ 2, 4, 6, 8 ];
c = [ 4, 3, 2, 1 ];
d = [ 8, 6, 4, 2 ];
For( plot = 1, plot <= N Row( a ), plot++,
Eval(
Substitute(
Expr(
vlb << Append(
Graph Box(
X Scale( -6, 6),
Y Name( "Amplitude" ),
Y Scale( -10, 10 ),
Y Function( aa + bb * Sine( cc * x / dd ), x )
)
);
),
Expr( aa ), a[plot],
Expr( bb ), b[plot],
Expr( cc ), c[plot],
Expr( dd ), d[plot]
)
);
);Ri: Aggiungendo più caselle grafiche a una singola finestra senza che vengano copiate le append più recentiHa! Questo è quello di cui avevo bisogno. Stavo cercando di capire come copiarlo in qualche modo mentre immaginavo che sarebbe stato più facile, ma non sono riuscito a trovare come. Copiare un'immagine e quindi aggiungerla a una casella immagine funziona perfettamente! E posso prendere solo la casella del grafico stesso senza le etichette degli assi e così per l'immagine, il che migliora ciò che sto cercando di fare.
Grazie!