一方通行私のスクリプトはプロットするY値のリストを持っています。OneWayプロットの "X"列と "By"列を選択するためのダイアログボックスがあります。それから軸の設定をフォーマットしたいのですが、プロットに "Oneway Analysis of Y1"とX軸の列、たとえば "By Wafer"、そして次にBy値、たとえば "Lot = 1234"と名前を付けます。。合計すると「ウェーハロットによるY1の一方向分析= 1234」となります。
軸のフォーマットを自動化できるようにDispatch句に入れる方法はありますか?
list_y = { "Y1", "Y2" };
dlg = Column Dialog( x = ColList( "X", Max Col( 1 ) ));
if(dlg["Button"] == 1,
xCol = dlg["x"];);
dlg = Column Dialog( by = ColList( "By", Max Col( 7 ) ));
if(dlg["Button"] == 1,
byCol = dlg["by"]);
OneWay( Y( Eval( list_y ) ), X( Eval( xCol ) ), By( Eval( byCol ) ),
SendToReport(
Dispatch({"Oneway Analysis of Y1"},"1",ScaleBox,{Scale( "Log" ),Format( "Scientific", 12 ),Inc( 1 ),Minor Ticks( 8 ),Show Minor Grid( 1 ),Show Major Grid ( 1 )}),
Dispatch({"Oneway Analysis of Y2"},"1",ScaleBox,{Scale( "Log" ),Format( "Scientific", 12 ),Inc( 1 ),Minor Ticks( 8 ),Show Minor Grid( 1 ),Show Major Grid ( 1 )})
));再:ワンウェイxpathを使用してすべてのOnewayオブジェクトを選択してから、それらすべてにDispatchメッセージを一度に送信します。 私はあなたのデータを持っていませんが、たとえあなたがBy変数を持っていても、それはサンプルデータライブラリの中のBig Classデータに素晴らしく働きました。 これは直接動作するはずです。
list_y = {"Y1", "Y2"};
dlg = Column Dialog( x = ColList( "X", Max Col( 1 ) ) );
If( dlg["Button"] == 1,
xCol = dlg["x"]
);
dlg = Column Dialog( by = ColList( "By", Max Col( 7 ) ) );
If( dlg["Button"] == 1,
byCol = dlg["by"]
);
//Name the oneway analysis object 'tmp'
tmp = OneWay( Y( Eval( list_y ) ), X( Eval( xCol ) ), By( Eval( byCol ) ) );
//get the window containing the one-way analysis
win = tmp << report;
//Select all the oneway objects and alter all the y-axes
(win << xpath( "//OutlineBox[@helpKey='Oneway Report']" )) << Dispatch(
{},
"1",
ScaleBox,
{Scale( "Log" ), Format( "Scientific", 12 ), Inc( 1 ), Minor Ticks( 8 ), Show Minor Grid( 1 ), Show Major Grid( 1 )}
);
これがBig Classの別の例です。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
win = (dt << Oneway( Y( {:height, :weight} ), X( :age ), By(:Sex) )) << Report;
(win << xpath( "//OutlineBox[@helpKey='Oneway Report']" )) << Dispatch(
{},
"1",
ScaleBox,
{Scale( "Log" ), Format( "Scientific", 12 ), Inc( 1 ), Minor Ticks( 8 ), Show Minor Grid( 1 ), Show Major Grid( 1 )}
);
再:ワンウェイありがとうございます。これは私が気付いていなかったいくつかの本当にクールな機能です。
私のコードでは、yリストにプロットするために20から40列のどこかにあり、それらは異なるy軸フォーマットのニーズを持っています。あなたの解決策はすべて同じフォーマットを更新するのに完璧です、以下の方法論は個々のプロットの特定のフォーマットに向いていますか?
再:ワンウェイxpathを使ってアウトラインボックスのタイトルを調べてどの応答がプロットされているのかを判断し、対応する応答の軸設定を条件付きで設定することもできます。これは20-40の潜在的な反応でかなり毛深いです。再:ワンウェイYou might find it easier to apply the formatting as part of the column properties in the data table, if you don't mind all plots (and the data table) using the same format for each column.