如何從數據表中獲取值並使用 for 循環繪製變量圖表您好,我是 JMP 腳本的新手。 我有一個包含幾列的數據表(測試 data.jmp)作為示例,我手動繪製變量圖表並手動添加參考線,然後從保存腳本菜單中獲取腳本。 在這裡我繪製了 3 列。 我有將近 50 列要繪製。 每個圖中的唯一區別是 Y 軸和參考線位置。 我試圖弄清楚如何從另一個數據表 (spec limits.jmp) 中提取這些數據,然後與 For 循環合併並繪製變量圖表。我附上了測試數據、規格限制數據和我正在使用的腳本。我能得到一些幫助嗎?
回复:如何從數據表中獲取值並使用 for 循環繪製變量圖表main = open( ); //Open test data
//open();
//main = current data table();
parameter_dt = Open( );
dt = Current Data Table();
Param_List = Column( parameter_dt, "Process") << Get Values;
LSL_spec = Column( parameter_dt, "LSL") << Get Values;
USL_spec = Column( parameter_dt, "USL") << Get Values;
LCL_spec = Column( parameter_dt, "LCL") << Get Values;
UCL_spec = Column( parameter_dt, "UCL") << Get Values;
Median_spec = Column( parameter_dt, "Median") << Get Values;
Yinc_spec = Column( parameter_dt, "Yinc") << Get Values;
Ymax_spec = Column( parameter_dt, "Ymax") << Get Values;
Ymin_spec = Column( parameter_dt, "Ymin") << Get Values;
nw = New Window( "test data", container = V List Box() );
For ( i=1, i<=N items(Param_List), i++,
content = V List Box(
Eval(
Substitute(
Expr(
main << Variability Chart(
Y( __ParamList__ ),
X( :Test date ),
Show Range Bars( 0 ),
Show Cell Means( 0 ),
Std Dev Chart( 0 ),
SendToReport(
Dispatch(
{__VarChart__},
"2",
ScaleBox,
{Min( Ymin_spec[i] ), Max( Ymax_spec[i] ), Inc( Yinc_spec[i] ), Minor Ticks( 1 ),
Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( LSL_spec[i], "Solid", "Black", "LSL", 1 ),
Add Ref Line( USL_spec[i], "Solid", "Black", "USL", 1 ),
Add Ref Line( LCL_spec[i], "Solid", "Magenta", "LCL", 1 ),
Add Ref Line( UCL_spec[i], "Solid", "Magenta", "UCL", 1 ),
Add Ref Line( Median_spec[i], "Solid", "Magenta", "Median", 1 )}
)
)
)
),
Expr(__ParamList__), Parse( ":" || Char(Param_List[i])),
Expr(__VarChart__), "Variability Chart for " || Char( Param_List[i])
)
);
);
container << Append(content)
);嗨,吉姆,
我按照你的腳本,發現了一些其他帖子並解決了我的問題。 這是我終於擁有的劇本。
謝謝你的幫助
回复:如何從數據表中獲取值並使用 for 循環繪製變量圖表感謝您的回复。 你給(幫助)的是繪製一張圖表。 我有一個超過 50 列的數據表,如果我繪製一個變量圖表並手動添加參考線,調整 Y 最小值和 Y 最大值,然後轉換為腳本,就可以了。 我在想我是否有另一個包含所有規格的數據表,如 UCL、LCL、中位數、Ymax 等。 如何從該規範數據表中獲取數據並添加每個值(如數組),然後將這些值合併到圖中。
回复:如何從數據表中獲取值並使用 for 循環繪製變量圖表搜索社區討論會找到幾個條目,這些條目涵蓋了您提出的問題。但是,了解您是 JMP 的新手,下面是一個完整的腳本,應該可以滿足您的需求
main << Variability Chart(
Y( :C ),
X( :Test date ),
Show Range Bars( 0 ),
Show Cell Means( 0 ),
Std Dev Chart( 0 ),
SendToReport(
Dispatch(
{"Variability Chart for C"},
"2",
ScaleBox,
{Min( 0.1 ), Max( 0.106 ), Inc( 0.001 ), Minor Ticks( 1 ),
Add Ref Line( 0, "Dotted", "Medium Light Gray", "", 1 ),
Add Ref Line( 665, "Solid", "Black", "LSL", 1 ),
Add Ref Line( 685, "Solid", "Black", "USL", 1 ),
Add Ref Line( 670, "Solid", "Magenta", "LCL", 1 ),
Add Ref Line( 680, "Solid", "Magenta", "UCL", 1 ),
Add Ref Line( 675, "Solid", "Magenta", "Median", 1 )}
)
)
)