你好
我是JSL的新手,需要幫助。我想獲取一個用於變異圖的腳本,但是我想傳遞一個可以控制是否需要變異性摘要報告的值。我嘗試瞭如下所示的操作,但似乎一直都在打印差異摘要報告。
在下面的代碼中,如果將控件設置為1,則我希望提供可變性摘要報告。如果設置為0,我想禁用可變性摘要報告...
如果我將其硬編碼為可變性摘要報告( 1個 )或可變性摘要報告( 0 ) 有用
control = 0;
New Window( "Variability Chart of RRAW_BER",
V List Box(
Variability Chart(
Y( :RRAW_BER ),
X( :SERIAL_NUM, :HD_PHYS_PSN, :DATA_ZONE ),
Connect Cell Means( 1 ),
Std Dev Chart( 0 ),
Points Jittered( 1 ),
Variability Summary Report( control ),
SendToReport(
Dispatch(
{"Variability Chart for RRAW_BER"},
"Variability Chart",
FrameBox,
{Row Legend(
:SPC_ID_x,
Color( 1 ),
Color Theme( "JMP Default" ),
Marker( 0 ),
Marker Theme( "" ),
Continuous Scale( 0 ),
Reverse Scale( 0 ),
Excluded Rows( 0 )
)}
)
)
)
)
);
這有點令人驚訝,但是這很容易解決。 只需在此行交換:
parse(eval insert("Variability Summary Report( ^control^ )"))
有點hack,但這應該對您有用。 它評估字符串中“ control”的值,然後將字符串解析為表達式以進行評估。
較乾淨的解決方案是命名可變性圖表對象,然後在可變性報告已存在之後發送消息以添加可變性圖表,也可以不發送此消息。 這是一個具有2個因子交叉樣本數據的示例:
dt = Current Data Table();
control = 1;
varchart = dt << Variability Chart(
Y( :Measurement ),
X( :Operator, :part# ),
Standard( :Standard )
);
if(control, varchart << Variability Summary Report( 1 ))
非常感謝 @cwillden 欣賞它.. 我喜歡這種簡單的變通辦法,因為它很適合我的腳本,但似乎不起作用(我根本無法獲得可變性摘要)。但是,您提供的更清潔的解決方案有效。