單程我的腳本有一個要繪製的 Y 值清單。 我有一個對話框可以為單向圖選擇“X”和“By”列。 然後我想格式化軸設置,但它將圖命名為“Y1 的單向分析”,後跟 X 軸列,例如“按晶圓”,然後是按值,例如“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 檢查大綱框的標題,以確定正在繪製哪個回應,然後有條件地設定相應回應的軸設定。 這會變得非常棘手,有 20-40 個潛在的回應。回覆:單向謝謝! 這是我不知道的一些非常酷的功能。
在我的程式碼中,我有 20-40 列要在 y 列表中繪製,並且它們有不同的 y 軸格式需求。 您的解決方案非常適合更新所有相同的格式,以下方法是否適合單一圖的特定格式?
回覆:單向使用 xpath 選擇所有 Oneway 對象,然後立即向所有對象發送 Dispatch 訊息。我沒有您的數據,但它在範例資料庫中的 Big Class 數據上運行得非常好,即使您有 By 變數也是如此。這*應該*可以直接工作:
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 )}
);