Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?
Hier ist ein Beispiel eines einfachen Skripts, das ich zum Erstellen eines Diagrammfelds verwende:
win = New Window( "Map",
Graph Box(
Frame Size(600, 600),
X Scale(0, 1252),
Y Scale(0, 1252),
Pen Color("white"),
Line( {10, 10}, {10, 1200} );
Line( {600, 10}, {600, 1200} );
Line( {1200, 10}, {1200, 1200} );
)
);Nachdem ich das obige Skript ausgeführt habe, kann ich ein JPG-Bild per Drag & Drop in den Hintergrund ziehen und bearbeiten (drehen, Größe ändern, Transparenz ändern usw.).
Welchen Code benötige ich, um das Hinzufügen des JPG-Bildhintergrunds als Teil des Skripts zu automatisieren?
Betreff: Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Danke für das Bild. Ich kann es jetzt finden! Ich habe versehentlich unter „Funktionen“ statt unter „Alle Kategorien“ gesucht.Betreff: Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Hier ist ein Bild des Verweises auf „Hintergrundbild einfügen“.

Betreff: Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Du bist wirklich nah dran. Das Hauptproblem ist, wie Sie vermuten, die Berichtsnachricht. Die Berichtsnachricht wird an eine Plattform gesendet, um den Anzeigekastenbaum abzurufen. Die GraphBox Ist ein Schaukastenbaum, keine Plattform. Es gibt auch einige kleinere Änderungen an den Positionierungsparametern (und ich habe auch mit einigen anderen Parametern gespielt). Die Positionen oben, links und unten, rechts werden in denselben Koordinaten wie die Achsen angegeben.
win = New Window( "Map",
gb=Graph Box(
Frame Size(600, 600),
X Scale(0, 1252),
Y Scale(0, 1252),
Pen Color("red"),
Line( {10, 10}, {10, 1200} );
Line( {600, 10}, {600, 1200} );
Line( {1200, 10}, {1200, 1200} );
)
);
fb1 = gb[Frame Box( 1 )];
fb1 << add Image(
Open(
Convert File Path(
"$SAMPLE_IMAGES/black rhino footprint.jpg"
)
),
Transparency( 0.5 ),
Rotate( 45 ),
Bounds(
Top( 800 ),Left( 100 ),
Bottom( 100 ),Right( 800 )
),
//SetSize( {300, 210} )
);
background picture positioned and rotatedbackground picture positioned and rotatedHintergrundbild positioniert und gedreht
Betreff: Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Xnelson,
Ich kann nicht herausfinden, wie ich Ihren Vorschlag umsetzen soll. Beim Durchsuchen meines Help ==> Scripting Index konnte ich den Verweis auf „Help==>Scripting Index==>FrameBox==>Paste Background Image“ nicht finden. Ich habe das folgende Skript ausprobiert, das aus meinem Beispielskript erstellt wurde, und versucht, Ihren Vorschlag anzuwenden:
// Here's my original script:
win = New Window( "Map",
Graph Box(
Frame Size(600, 600),
X Scale(0, 1252),
Y Scale(0, 1252),
Pen Color("white"),
Line( {10, 10}, {10, 1200} );
Line( {600, 10}, {600, 1200} );
Line( {1200, 10}, {1200, 1200} );
)
);
// And here's what I added based on your suggestion:
opr1 = win << report;
fb1 = opr1[Frame Box( 1 )];
fb1 << Add Image(
Open(
Convert File Path(
"$SAMPLE_IMAGES/black rhino footprint.jpg"
)
),
Transparency( 0.9 ),
Rotate( 90 ),
Bounds(
Left( 0.135416666666667 ),
Right( 3.26041666666667 ),
Top( 11.8333333333333 ),
Bottom( -1 )
),
SetSize( {300, 210} )
);Wenn ich das Skript ausführe, erhalte ich die Fehlermeldung:
„Das Anzeigefeld ‚EvalContextBox‘ erkennt die Meldung ‚report‘ nicht; vielleicht meinen Sie eine dieser Meldungen: <<<<<<<< <<<<<<<<<<
Ich habe den Skriptindex durchgesehen und einen Verweis auf „report“ gefunden, jedoch mit der Syntax „y= Report(Plattformobjekt)“. Also habe ich versucht, die Zeile „opr1 = win << report;“ zu ersetzen. mit „opr1 = Report(win)“. Dadurch wurde die erste Fehlermeldung entfernt, aber jetzt erhalte ich die Fehlermeldung „Send Expects Scriptable Object in access or classification of ‚Send‘ , fb1 << /*###*/Add Image(“.
Ich dachte, ich müsste vielleicht auf das Diagrammfeld selbst statt auf das neue Fenster verweisen, also habe ich das Skript ausprobiert:
win = New Window( "Map",
gb= Graph Box(
Frame Size(600, 600),
X Scale(0, 1252),
Y Scale(0, 1252),
Pen Color("white"),
Line( {10, 10}, {10, 1200} );
Line( {600, 10}, {600, 1200} );
Line( {1200, 10}, {1200, 1200} );
)
);
opr1 = Report( gb );
fb1 = opr1[Frame Box( 1 )];
fb1 << Add Image(
Open(
Convert File Path(
"$SAMPLE_IMAGES/black rhino footprint.jpg"
)
),
Transparency( 0.9 ),
Rotate( 90 ),
Bounds(
Left( 0.135416666666667 ),
Right( 3.26041666666667 ),
Top( 11.8333333333333 ),
Bottom( -1 )
),
SetSize( {300, 210} )
);(Hinweis: Ich habe zuerst die Syntax „opr1 = gb << report“ ausprobiert, aber sie hat mir den ursprünglichen „report“-Fehler angezeigt.) Ich habe immer noch ein „Send Expects Scriptable Object“ beim Zugriff oder bei der Auswertung von „Send“, fb1 << / *###*/Bild hinzufügen(" Fehler.
Was mache ich falsch?
Gibt es außerdem eine Möglichkeit, das Bild in das Skript einzubetten? Da das Skript von mehreren Personen ausgeführt wird, lässt sich ein bestimmter Verweis auf einen Bildspeicherort nicht einfach skalieren. Kann ich beispielsweise beim Hinzufügen eines Bildes statt „Öffnen“ die Option „Set Blob( Char To Blob())“ verwenden?
Betreff: Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Vielleicht bekommen Sie ja ein paar Anregungen von dieser Beitrag darüber, wie die Segmentschichtung des Rahmens gesteuert werden kann, um Ihr Bild vor oder hinter Ihre Daten zu verschieben. Es ist möglich, eine Karte, Datenpunkte und Bilder zu haben und diese in der von Ihnen benötigten Reihenfolge abzurufen.
Betreff: Welchen Skriptcode benötige ich, um einem Diagrammfeld automatisch ein Hintergrundbild hinzuzufügen?Sie müssen lediglich das Hintergrundbild in die Frame Box() Ihrer Graph Box() einfügen. Unten finden Sie ein Beispiel direkt aus dem Scripting Index, das die Vorgehensweise veranschaulicht
Hilfe==>Skriptindex==>FrameBox==>Hintergrundbild einfügen
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Animals.jmp" );
op = Overlay Plot(
X( :subject ),
Y( :miles ),
Separate Axes( 1 )
);
opr1 = op << report;
opr2 = opr1 << Clone Box;
opr1 << append( opr2 );
fb1 = opr1[Frame Box( 1 )];
fb1 << Add Image(
Open(
Convert File Path(
"$SAMPLE_IMAGES/black rhino footprint.jpg"
)
),
Transparency( 0.9 ),
Rotate( 90 ),
Bounds(
Left( 0.135416666666667 ),
Right( 3.26041666666667 ),
Top( 11.8333333333333 ),
Bottom( -1 )
),
SetSize( {300, 210} )
);
fb1 << Copy Picture;
fb2 = opr2[Frame Box( 1 )];
fb2 << Paste Background Image;