Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Farbe/Markierung/Legende usw. der Plotformatierung verliere. Bitte helfen Sie mirHallo,
Ich verwende den folgenden Code, um zu versuchen, ein Bild von Variabilitäts- und Zeittrenddiagrammen zu speichern, und es funktioniert, aber aus irgendeinem Grund verliere ich die Diagrammformatierung, Farbe/Markierung/Legende usw.In diesem Fall Flagging_Charts_Data_Var und Flagging_Charts_Data_Bivar sind die Handles für meine Variabilitäts- und Zeittrenddiagramme. Das ist wahrscheinlich etwas Einfaches, das mir fehlt, bitte helfen Sie, Danke!!!
//Code, um zu versuchen, meine Diagramme als PNG zu speichern
Summary_Data_Flagging_Window = HListBox(Flagging_Charts_Data_Var,Flagging_Charts_Data_Bivar);
Summary_Data_Flagging_Window << Save Picture(file_name,png);
Betreff: Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Plotformatierung, Farbe/Markierung/Legende usw. verliereGlückwunsch!
Betreff: Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Plotformatierung, Farbe/Markierung/Legende usw. verliereVergiss es, es herauszufinden. Nochmals vielen Dank!!!
Betreff: Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Plotformatierung, Farbe/Markierung/Legende usw. verliereVielen Dank für die hervorragende Erklärung und Hilfe. Wenn ich das von Ihnen angehängte Skript ausführe, funktioniert es einwandfrei. Als ich jedoch meinen Code aktualisierte, wurden leere .png-Dateien erstellt. Vielleicht fehlt mir noch etwas?Sollte ich nicht Outlinebox[1] verwenden? Ich verwende JMP Pro 11.1.1 unter Win8.Ich füge auch den gesamten Code in eine Schleife ein, um mehrere PNG-Bilder zu erstellen. Muss ich die Variablen varpic oder bivpic jedes Mal aktualisieren, wenn ich die Schleife oder das Zusammenfassungsfenster durchlaufe?Nochmals vielen Dank, ich denke, es kommt näher.
Betreff: Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Plotformatierung, Farbe/Markierung/Legende usw. verliereMatt,
Probieren Sie das beigefügte Skript aus.Sie müssen den Pfad ändern, wenn Sie nicht über das Laufwerk ac:/temp/ verfügen.Überprüfen Sie, ob die Farbe der gespeicherten Datei entfernt wurde.
Aufgrund meiner Erfahrung sind mir bei den Farben nur folgende Probleme aufgefallen:
- Das Skript wird ausgeführt und vor dem Speichern des Bildes wird eine Datentabelle zum Löschen der Zeilenzustände aufgerufen. Im Skript sehen Sie die Anweisungen varpic = report(varchart)[OutlineBox(2)] und bivpic = report(biv)[OutlineBox(1)]. Leute, die neu bei JSL sind, denken oft, dass dadurch das Diagramm so erfasst wird, wie es ist, aber in Wirklichkeit wird nur ein Handle für das aktive (Live-)Fenster erstellt. Daher werden alle Änderungen an den Zeilenzuständen der Datentabelle beim Speichern im Diagramm widergespiegelt.
- Diagrammanpassungen werden mithilfe von Variablen an der Rahmenbox vorgenommen. Diese Variablen (nicht ihre Werte) werden gespeichert. Wenn sich die Variablen vor dem Speichern des Bildes ändern oder gelöscht werden, werden sie nicht im Bild angezeigt.
- Vor etwa 8 Jahren gab es einen Fall, bei dem die JMP-Ausgabe sowie andere statistische Grafikausgaben immer schwarzweiß ausgegeben wurden.Es befand sich auf einem Server, auf dem kein Standarddrucker oder keine Standardgrafikkarte definiert war. Ich habe das nur einmal gesehen.
Wenn also das angehängte Skript die Farben speichert und Sie die Bilder speichern, bevor Sie den Zeilenstatus schließen oder ändern, liegt es möglicherweise an der Art und Weise, wie Sie auf die Diagramme verweisen.Wenn die Farben aus der Datei „twopics.png“ entfernt werden, ist das eine Systemsache.
Sie sollten Ihr Betriebssystem und Ihre JMP-Version notieren.Viel Glück
Betreff: Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Plotformatierung, Farbe/Markierung/Legende usw. verliereVielen Dank für die Antwort. Ich glaube nicht, dass die Geschwindigkeit das Problem ist. Ich denke, dass etwas mit der Art und Weise zusammenhängt, wie Sie den Plot an den Befehl „save picture()“ senden müssen, aber ich kenne mich mit JMP nicht gut genug aus, um das zu wissen Die Antwort, bitte, wenn jemand anderes helfen kann?Danke, Matt
Betreff: Der JSL-Code zum Speichern des Bildes führt dazu, dass ich die Plotformatierung, Farbe/Markierung/Legende usw. verliereMein erster Gedanke ist, dass die Plots möglicherweise noch nicht mit Ihrer benutzerdefinierten Formatierung fertig gezeichnet sind, bevor das Bild gespeichert wird.Ich habe mir nicht die Zeit genommen, genau zu verstehen, wann es notwendig ist, aber ich lege Wert darauf, aus Sicherheitsgründen vor jeder Bildaufnahme oder -speicherung „<< Aktualisierungsfenster“ zu senden.
Dies ist ein übermäßig komplexes Beispiel, aber dieses 3D-Plot-Tools-Add-In Verwendet Update-Fenster.Sie können direkt zum Quellcode springen GitHub; Suchen Sie nach „Update-Fenster“, um die relevanten Zeilen zu finden (derzeit 145–148).In diesem Fall wird die Aktualisierungsfensternachricht an ein „Scatterplot 3D“-Fenster gesendet, bevor das Diagramm in diesem Fenster als Bild erfasst wird.
//rotate the scatterplot
sp[1] << Frame3d( Set Rotation( x, y, z ) );
//make sure the plot is redrawn
sp[1] << update window;
//take a picture
img = (sp[1] << Find( Picture Box(1) )) << Get Picture;