FrameBoxは、別の表示ボックスに挿入されたときに参照行を保持しません参照線が軸ボックスのプロパティであることは知っていますが、回避策は何ですか? ユースケースは、ボックスを並べて、複数のプロットの要素を1つに結合することです。 こちらの掲示板で答えが見つかりませんでした。
dt = Data Table("Big Class");
gbBar = Graph Builder(
Size( 521, 452 ),
Show Control Panel( 0 ),
Variables( X( :age ) ),
Elements( Bar( X, Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"age",
ScaleBox,
{Add Ref Line( 1.5, "Solid", "Medium Dark Red", "", 1 )}
)
)
);
nw = New Window("for testing",
OutlineBox("stuff",
db1 = H List Box();
)
);
db1 << Append(report(gbBar)[FrameBox(1)]);jmpversion()
/*:
"14.3.0"
グラフィックススクリプティングRe:FrameBoxは、別の表示ボックスに挿入されたときに参照行を保持しませんFrameBox()ではなくPictureBox()を追加します
db1 << Append(report(gbBar)[PictureBox(1)]);

Re:FrameBoxは、別の表示ボックスに挿入されたときに参照行を保持しません素早い対応に感謝致します。 ピクチャーボックスには軸と凡例が含まれているため、これは機能しません。 他の要素をx軸に揃えられるように、ラインナップボックスを使用しています。 簡略化した例:
dt = Data Table( "Big Class" );
gbBar = Graph Builder(
Size( 521, 452 ),
Show Control Panel( 0 ),
Variables( X( :age ) ),
Elements( Bar( X, Legend( 3 ) ) ),
SendToReport( Dispatch( {}, "age", ScaleBox, {Add Ref Line( 1.5, "Solid", "Medium Dark Red", "", 1 )} ) )
);
nw = New Window( "for testing",
Outline Box( "complicated plot",
Spacer Box( Size( 2, 10 ) ),
lu1 = Lineup Box( N Col( 3 ), Spacing( 0 ) )
)
);
lu1 << Append( Report( gbBar )[AxisBox( 2 )] );
lu1 << Append( Report( gbBar )[FrameBox( 1 )] );
lu1 << Append( Report( gbBar )[LegendBox( 1 )] );
//end of row
lu1 << Append( Spacer Box() );
lu1 << Append( Report( gbBar )[AxisBox( 1 )] );
lu1 << Append( Spacer Box() );
//end of row
lu1 << Append( Spacer Box() );
lu1 << Append( insrt_icons = H List Box() );
lu1 << Append( Spacer Box() );
numXAxisWidth = (gbBar << report)[AxisBox( 1 )] << get width;
numAges = N Items( Associative Array( Column( dt, "age" ) ) << get keys );
numOneIncr = (numXAxisWidth) / (numAges);
For( _i = 1, _i <= numAges, _i++,
insrt_icons << Append( Spacer Box( Size( numOneIncr, numOneIncr ), Color( _i ) ) )
);
別のアプローチを学びたいと思います。 最初は、要素の幅に一致するスペーサーボックスを使用しようとしましたが(<< get widthを使用)、説明できないマージンがあったため失敗しました。
