Ich habe ein Skript erstellt, das drei Diagrammerstellungsdiagramme in ein Berichtsfenster einfügt, wobei jedes Diagramm über einen eigenen Spaltenumschalter verfügt. Die Idee ist, eine Reihe von Overlay-Plots zu imitieren, aber anstatt zu scrollen, um alle Graphen zu sehen, kann man einfach auswählen, welche Einheit man sehen und mit den beiden anderen vergleichen möchte. Ich bin so weit gekommen, möchte aber, dass Änderungen an den Linien oder der x-Achse auf die beiden anderen Diagramme angewendet werden.
Mit einem Grafikskript kann ich einige Einstellungen kopieren / einfügen, die von einem Diagramm in ein anderes geändert wurden: Achseneinstellungen, Linienstil, Linienfarbe. Ich muss in der Lage sein, dasselbe für die Linienbreite zu tun, aber ich war nicht in der Lage, die Linienbreite erfolgreich von einem Diagramm in ein anderes zu kopieren und einzufügen. Es scheint keinen Befehl zum Einstellen der Breite des von mir verwendeten Linientyps zu geben.
Ich hatte ursprünglich gehofft, die gesamte Bildeinstellung von einem zum anderen kopieren / einfügen zu können, aber ich habe das noch nicht herausgefunden. Idealerweise kann ich auf die Legendeneinstellungen der einen zugreifen und sie auf die beiden anderen kopieren.
Unten finden Sie einen Ausschnitt des Codes, an dem ich arbeite und den ich nicht zum Arbeiten bringen kann.
Jede Hilfe wird geschätzt,
Al
frame1 = Report(gb1)[FrameBox( 1 )];
frame2 = Report(gb2)[FrameBox( 1 )];
frame3 = Report(gb3)[FrameBox( 1 )];<BR /><BR />frame1 << add graphics script(<BR /> // Check for a change<BR /> If( gb1XOrigin != X Origin() | gb1XRange != X Range(), <BR /> // If a change is found, copy the new Y Origin and Y Range<BR /> // to the Flagging(Holding) variables<BR /> gb1XOrigin = X Origin();<BR /> gb1XRange = X Range();<BR /> // Copy the new axis settings from the OneWay display<BR /> // to the Bivariate Y Axis<BR /> Report( gb1 )[Axis Box( 1 )] << Copy Axis Settings;<BR /> Report( gb2 )[Axis Box( 1 )] << Paste Axis Settings;<BR /> Report( gb3 )[Axis Box( 1 )] << Paste Axis Settings;<BR /> );<BR /> For( i = 1, i <= NItems(Sel_Batches_List), i++,<BR /> seg1 = (frame1 << FindSeg( LineSeg( i ) ) );<BR /> seg2 = (frame2 << FindSeg( LineSeg( i ) ) );<BR /> seg3 = (frame3 << FindSeg( LineSeg( i ) ) );<BR /> seg1Style = seg1 << Get Line Style();<BR /> seg2 << Set Line Style( EvalExpr( seg1Style ) );<BR /> seg3 << Set Line Style( EvalExpr( seg1Style ) );<BR /> );<BR /> For( i = 1, i <= NItems(Sel_Batches_List), i++,<BR /> seg1 = (frame1 << FindSeg( LineSeg( i ) ) );<BR /> seg2 = (frame2 << FindSeg( LineSeg( i ) ) );<BR /> seg3 = (frame3 << FindSeg( LineSeg( i ) ) );<BR /> seg1Color = seg1 << Get Line Color();<BR /> seg2 << Set Line Color( EvalExpr( seg1Color ) );<BR /> seg3 << Set Line Color( EvalExpr( seg1Color ) );<BR /> );<BR /> //This is where I am running into problems, breaks the entire graphics script<BR /> /*For( i = 1, i <= NItems(Sel_Batches_List), i++,<BR /> seg1 = (frame1 << FindSeg( LineSeg( 3 ) ) );<BR /> seg2 = (frame2 << FindSeg( LineSeg( 3 ) ) );<BR /> seg3 = (frame3 << FindSeg( LineSeg( 3 ) ) );<BR /> seg1Width = seg1 << Get Line Width(); //This get works<BR /> //seg2 << Set Line Width( EvalExpr( seg1Width ) ); //Setting does not work<BR /> //seg3 << Set Line Width( EvalExpr( seg1Width ) ); <BR /> );*/<BR />);