Beim Schließen eines Diagramms wird das Diagrammplotskript im eingebetteten Protokoll meines JSL-Skripts (das zum Plotten des Diagramms verwendet wird) reproduziert. Gibt es eine Möglichkeit, das zu unterdrücken?
Wir sollten zumindest hinzufügen können
Report Snapshot On Close(0)
wenn wir Plattformen starten, um zu verhindern, dass die Aktionen aus Berichten aufgezeichnet werden. Oder eine andere Möglichkeit, sie zu steuern, vielleicht sogar eine Einstellung auf Sitzungsebene, ein bisschen wie Names Default To Here(1) (vielleicht mache ich daraus einen Wunschlisteneintrag).
Ich möchte auch verhindern können, dass JMP den letzten zu protokollierenden Ausdruck druckt. Ich möchte eigentlich keine riesigen Listen oder Matrizen in meinem Protokoll sehen, wenn ich sie nicht selbst ausdrucke. Ich neige dazu, meine Skripte mit Write() zu beenden, um zumindest einige zusätzliche Ausgaben für die Protokollierung zu vermeiden.
Bearbeiten:
Geben Sie uns (Skriptern) eine Möglichkeit, zu verhindern, dass Berichte bei der Skripterstellung Snapshots erstellen
Ja, diese „Aktionsaufzeichnungs“-Optionen und das erweiterte Protokoll sind wirklich nervig und unpraktisch.
Ich bin mir nicht sicher, ob es spezielle Methoden zum Unterdrücken des Berichts-Snapshots gibt (außer dem Ändern von Einstellungen (tun Sie dies in Ihrem Skript nicht für andere Benutzer als Sie selbst)). Abhängig von Ihrem Skript können Sie das Diagramm möglicherweise mit << Fenster schließen schließen, wenn Sie es in ein neues Fenster umschließen
Names Default To Here(1);
dt = open("$SAMPLE_DATA/Big Class.jmp");
nw = New Window("", gb = dt << Graph Builder(
Variables(X(:weight), Y(:height), Overlay(:sex)),
Elements(Points(X, Y, Legend(9)), Line Of Fit(X, Y, Legend(11)))
));
nw << on close(
gb << close window;
);
Sie können Ihre Einstellungen auch ändern, aber tun Sie dies nicht in Ihrem Skript für andere Benutzer

Ich bin gespannt, ob andere durch diese Protokollierung erhebliche Geschwindigkeitseinbußen feststellen und sich nicht nur darüber ärgern, Dinge zu sehen, die Sie nicht im Protokoll haben wollten? Ich glaube, ich sehe das vielleicht und es steht auf meiner Liste, weitere Nachforschungen anzustellen ...
Ich denke, es wird ein ziemlich großes Skript erfordern, damit die Verlangsamung auftritt, aber es könnte passieren, dass sich beispielsweise das Drucken großer Matrizen (normalerweise aus Versehen, da JMP immer die letzte Zeile „druckt“) aufgrund der Auswirkungen auf den Skripteditor auswirken wird Protokolldruck. Und auch das Löschen solcher Ausdrucke muss normalerweise mit Clear Log() erfolgen, da es sehr langsam sein kann, wenn Sie die „Schnell“-Option von Strg + A und Löschen ausprobieren.
Dies wird den Skripteditor höchstwahrscheinlich aufgrund des Protokolldrucks (über 120.000 Zeichen) verlangsamen, da dieser relativ schnell geschlossen wird, wenn nichts in das Protokoll des Skripteditors gedruckt wird (das erweiterte Protokoll begrenzt die angezeigte Größe, indem es irgendwann abgeschnitten wird ( scheint etwa 10.000 Zeichen zu umfassen) und fügt hinzu ...)
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb_expr = Expr(
Graph Builder(
Size(421, 5026),
Show Control Panel(0),
Variables(X(:weight), Y(:height), Page(:name), Overlay(:sex)),
Elements(Points(X, Y, Legend(9)), Line Of Fit(X, Y, Legend(11)), Smoother(X, Y, Legend(12)), Box Plot(X, Y, Legend(13))),
SendToReport(
Dispatch({}, "weight", ScaleBox(2), {Min(98.4224795640327), Max(99.45), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(3), {Min(106.55), Max(107.538283378747), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(4), {Min(111.442098092643), Max(112.45), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(5), {Min(111.599046321526), Max(112.499046321526), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(6), {Min(83.4592643051771), Max(84.3592643051771), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(7), {Min(98.55), Max(99.5480926430518), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(13), {Min(92.4715258855586), Max(93.3715258855586), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "weight", ScaleBox(14), {Min(118.55), Max(119.555449591281), Inc(0.2), Minor Ticks(1)}),
Dispatch({}, "height", ScaleBox(2), {Min(63.21), Max(64.11), Inc(0.2), Minor Ticks(1)})
)
)
);
lub = Lineup Box(N Col(4));
For(i = 1, i <= 100, i++,
lub << Append(gb_expr)
);
nw = New Window("",
lub
);
Write();