Ich konnte dies nicht in der Dokumentation finden - vielleicht habe ich nach falschen Begriffen gesucht.
Ich erstelle einen Bubble-Plot in JSL. Alles funktioniert gut, aber ich möchte Folgendes kontrollieren können:
- Die Größe des Interpolationsschritts. Blasendiagramme scheinen die Bewegung zwischen tatsächlichen Punkten zu interpolieren. Ich möchte die Interpolation auf Null reduzieren (nur die tatsächlich gemessenen Punkte anzeigen).
- Wie starte und beende ich die Animation in JSL? Ich möchte den Plot generieren, dann die Animation automatisch zur Zeit 0 starten und einmal durch die Zeit Tfinal laufen lassen, dh die Steuerung der Play / Pause-Taste.
Vielen Dank!
Verbrachte mehr Zeit mit dem Durchsuchen des Skriptindex und fand genug, um meine Fragen zu beantworten ...
Erstellen Sie zunächst das Blasendiagramm als Objekt:
bp = Bubble Plot(
X( :X ),
Y( :Y ),
Time( :Time ),
ID( :Ball ),
Bubble Size( plotBallD ),
Time Index( 1 ), ...
Wichtig oben, um den Zeitindex (1) festzulegen, damit die Animation beim ersten Schritt beginnt.
Als nächstes fand ich den "Go" -Befehl:
bp << Go;
Dies startet die Animation ab dem ersten Frame (oder wo immer Sie dies im Zeitindex angegeben haben). Dadurch wird jedoch die Animation in Bewegung gestartet und ohne Unterbrechung fortgesetzt.
Sie können die Animation stoppen mit:
bp << Stop;
aber Sie können nicht sagen, wo Sie aufhören. Ich wollte eine StartAtFirstStepEndAtLastStep-Funktion. Dazu musste ich einige manuelle Manipulationen vornehmen:
// ensure we are stopped
bp << Stop;
// reset to first time index (just in case)
bp << Time Index (1);
// wait to be sure processing is caught up
wait(0.5);
// now loop through the steps. Here I assume nSteps.
for (i=1, i<=nSteps, i++,
// specify delay between each step
wait(.1);
// step the display using the Step command
bp << Step;
// Important. Need to update the window here. If you don't, graphics will update in background.
bp << Update Window;
);
Das tut es! Das Skript wird ausgeführt und nur die tatsächlichen Blasen für die Daten zu bestimmten Zeitschritten werden angezeigt. Dies vermeidet auch die andere Frage, die ich anfangs gestellt habe: Wie kann ich die Interpolation anpassen, die JMP zwischen den Zeitschritten vornimmt, um die Animation flüssiger zu gestalten? Ich wollte diese Funktion nicht.
Im Geiste der Beantwortung meiner eigenen Frage (mit dem Wunsch, dass ich im Vorfeld zusätzliche Vorarbeit geleistet hätte), rufe ich dies als Beantwortet an!