3つのグラフビルダープロットをレポートウィンドウに配置するスクリプトを作成しました。各プロットには独自の列スイッチャーがあります。 アイデアはたくさんのオーバーレイプロットを模倣することですが、すべてのグラフを見るためにスクロールする必要がある代わりに、どちらのユニットを見たいかを選択して他の2つの選択肢と比較することができます。 ここまで来ましたが、他の2つのグラフにも線またはX軸に加えた変更を適用したいと思います。
グラフィックススクリプトを使用して、あるグラフから別のグラフに変更された設定(軸の設定、線のスタイル、線の色)をコピーして貼り付けることができます。 線幅についても同じことができるようにする必要がありますが、あるグラフから別のグラフに線幅を正しくコピーして貼り付けることはできませんでした。 使用している線種の幅を設定するコマンドがないようです。
私は当初、全体のフレーム設定をあるものから別のものにコピー&ペーストできることを望んでいましたが、私はまだそれを理解していません。 理想的には、1つの凡例設定にアクセスしてそれを他の2つにコピーすることができるでしょう。
私が働いていたコードのスニペットと私が仕事に着けないものについては下記を見てください。
任意の助けは大歓迎です、
アル
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 />);