GraphBuilder に送信される Dispatch() オプションを動的に変更するスクリプト内のオプションに応じて、グラフ ビルダーに送信されるオプションの一部を変更する必要があります。どうやって機能させるのかわかりません。
このスクリプトは、グラフ Scale("Log"), Format("Engineering", 12) を作成するために機能します。
Graph Builder(
Variables(
X( :Split ),
X( :Wafer, Position( 1 ) ),
Y( As Column( analysisTests[i] ) ),
Color( :Split )
),
Elements(
Points( X( 1 ), X( 2 ), Y, Legend( 21 ) ),
Box Plot( X( 1 ), X( 2 ), Y, Legend( 22 ) )
),
SendToReport(
Dispatch(
{},
analysisTests[i],
ScaleBox,
{Scale("Log"), Format("Engineering", 12)}
),
Dispatch(
{},
"graph title",
TextEditBox,
{Set Text( title )}
)
)
)
しかし、このように情報を送信しようとすると、私には同じように見えても、機能しません。
ScaleboxVariables = {};<BR />if(log != 0,
ScaleboxVariables = Insert(ScaleboxVariables, Expr(Scale("Log")) );
ScaleboxVariables = Insert(ScaleboxVariables, Expr(Format( "Engineering", 12 )) );
);
Dispatch(
{},
analysisTests[i],
ScaleBox,
ScaleboxVariables
),
これに関する助けをいただければ幸いです。
マスカスタマイゼーションRe: GraphBuilder に送信される Dispatch() オプションを動的に変更するありがとうマーク、とても役に立ちました。 グラフビルダーで必要なグラフを構築し、それからJMPが生成するスクリプトをコピーし、それを独自の変数で編集していましたが、機能しませんでした。 あなたのソリューションはうまく機能し、実装したいさまざまな変更のプロセスをよりよく理解するのに役立ちました。Re: GraphBuilder に送信される Dispatch() オプションを動的に変更する2期
- プラットフォーム オブジェクト: グラフ ビルダーの背後にあるロジック。 それは見えません。
- レポート サーフェス表示ボックス ツリー: グラフ ビルダーからの出力。 目に見えるグラフ、スライダー、ボタン。
マークは正しいです。ディスパッチ構文は人間ではなくマシンのために作成されました。 Dispatch メッセージには、プラットフォーム オブジェクトがレポート内の表示ボックスを見つけるために使用する情報が含まれています。使用する必要がある場合は、レポートに送信ディスパッチは次のように送信する必要があります。
dt = Open( "$sample_data/big class.jmp" );
gb = dt << Graph Builder(
Size( 512, 442 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :weight ), Y( :height ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
// SendToReport(
// Dispatch( {}, "weight", ScaleBox, {Scale( "Log" ), Format( "Best", 6 ), Min( 60 ), Max( 200 ), Inc( 1 ), Minor Ticks( 1 )} ),
// Dispatch( {}, "height", ScaleBox, {Format( "Engineering", 12 )} )
// )
);
newFormat = {"Percent", "Engineering", "Best"};
newScale = {"Linear", "Log", "Linear"};
newInc = {10, 1, 20};
For( i = 1, i <= N Items( newFormat ), i += 1,
Wait( 1 ); // wait only needed for the demo!
gb << Dispatch( {}, "weight", ScaleBox, {Scale( newScale[i] ), Format( "Best", 6 ),
Min( 60 ), Max( 200 ), Inc( newInc[i] ), Minor Ticks( 0 )} );
gb << Dispatch( {}, "height", ScaleBox, {Format( newFormat[i], 12 )} );
);ギガバイトはプラットフォーム オブジェクトです。 <<派遣にメッセージが送信されます。 送信しないでください<<派遣レポート画面へのメッセージ。 SendToReport(...)プラットフォーム オブジェクトにメッセージをレポート ツリーにディスパッチするように指示しています。
マークは使用を提案します
gb rep = gb << Report;
gb rep[AxisBox(2)] << Format( Engineering, 12 );
上記のすべてにおいて、ギガバイトグラフビルダープラットフォームオブジェクトです。 マークの例では、 GB担当者グラフ ビルダー プラットフォーム オブジェクトに属する表示ボックス レポート ツリーです。 を送信する<<レポートへのメッセージギガバイトplatform オブジェクトは、表示ボックス ツリーのルート (レポートの表面、表示される部分) を取得します。 ルートに添字を付けると、表示ボックス ツリーのより具体的なサブツリーが返されます。
gb rep[AxisBox(2)]
それが、Mark が Format メッセージを送信したい相手です。 その添え字を取得する 1 つの方法は、ツリー構造の表示を使用することです。
Show Tree Structure: right-click on the open-close triangle.Show Tree Structure: right-click on the open-close triangle.ツリー構造を表示: 開閉三角形を右クリックします。
レポートとツリー構造ウィンドウはリンクされています。高さ軸をクリックしました。 高さ軸とツリー構造内のその情報の両方が強調表示されます。 AxisBox(2) は、レポート内の 2 番目の軸ボックスです。
Re: GraphBuilder に送信される Dispatch() オプションを動的に変更する追加するには@Mark_Bailey JMP プラットフォームからの出力でさまざまな表示オブジェクトに渡すことができるすべてのメッセージと関数は、スクリプト索引の例とともに説明されています。。さまざまな JMP プラットフォームからの出力は、表示ツリーと呼ばれるオブジェクトで満たされた構造に表示されます。 したがって、『スクリプト ガイド』の表示ツリーに関するセクションも読むことをお勧めします。JMP プラットフォームからの出力を使用して実行できる素晴らしいことのまったく新しい世界が開かれます。
Re: GraphBuilder に送信される Dispatch() オプションを動的に変更するここで他の多くの議論に答えて述べたように、Send to Report 引数は、スクリプトを保存するときに JMP がカスタマイズを保存できるように開発されました。 それは私たちのために開発されたものではありません。 もっと良い方法があります。 フォーマット メッセージを軸ボックスに直接送信します。 このような:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Size( 534, 454 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :height ), Y( :weight ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
gb rep = gb << Report;
gb rep[AxisBox(2)] << Format( Engineering, 12 );