陣容框 跳行我試著跳過陣容框中的一行圖表。 例如,我想要第一行有 4 個圖表,第二行有 3 個圖表,等等,而不是 4x4 網格。有沒有辦法跳過一行或在排列框中添加換行符?
dt = current data table();
//where dtLookup is the data table containing a list of X and Y columns to plot from dt
nw = New Window( "Outputs", lub = Lineup Box( N Col( 4 ) ) );
For Each Row(dtLookup,
lub << append(
dt <<
Graph Builder(
Size( 500, 350 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( As Column( dt, col_name_X ) ), Y( As Column( dt, col_name_Y) )),
Elements( Points( X, Y, Legend( 5 ) ) )
));
進階統計建模品質和工藝工程回覆:陣容框跳行太感謝了。 我最終使用您的 vlb 添加根據列名稱中解析的資料插入“分頁符”!
再一次感謝你!
col_name_Y = Column(dtLookup, "Y")[i];
col_name_X = Column(dtLookup, "X")[i];
col_name_X_next = Column(dtLookup, "X")[i+1];<BR /> // col_name_X format = XXX YYY_ZZZ. The following word commands extracts YYY.
rail= Word(1,Word(2,col_name_X," "),"_");
rail_next = Word(1,Word(2,col_name_X_next," "),"_");
if(rail!=rail_next,page_break =1,page_break=0);
If(page_break == 0,
lub << append(
dt << Graph Builder(
Size(500, 350),
Show Control Panel(0),
Show Legend(0),
Variables( X( As Column( dt, col_name_X ) ), Y( As Column( dt, col_name_Y) )),
Elements(Points(X, Y, Legend(5)))
)
);
,
lub << append(
dt << Graph Builder(
Size(500, 350),
Show Control Panel(0),
Show Legend(0),
Variables( X( As Column( dt, col_name_X ) ), Y( As Column( dt, col_name_Y) )),
Elements(Points(X, Y, Legend(5)))
)
);
vlb << Append(lub = Lineup Box(N Col(lub_idx)));
)回覆:陣容框跳行如果您知道如何建立具有特定列數的陣容框,您可以在附加新圖表之前附加陣容框。
這很可能很容易被破壞,因為它希望您在 dtlookup 中恰好有 10 (1+2+3+4) 個值(此處使用列表而不是資料表)。
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
dtlookup = {"NPN1", "PNP1","PNP2","NPN2","PNP3","IVP1","PNP4","NPN3","IVP2","NPN4"};
lub_idx = 4;
ongoing_gb = lub_idx;
nw = New Window("Outputs", vlb = V List Box(lub = Lineup Box(N Col(lub_idx))));
For(i = 1, i <= N items(dtlookup), i++,
If(ongoing_gb > 0,
lub << append(
dt << Graph Builder(
Size(200, 150),
Show Control Panel(0),
Show Legend(0),
Variables(X(As Column(dt, dtlookup[i])), Y(As Column(dt, "lot_id"))),
Elements(Points(X, Y, Legend(5)))
)
);
ongoing_gb--;
,
lub_idx = lub_idx - 1;
ongoing_gb = lub_idx;
vlb << Append(lub = Lineup Box(N Col(lub_idx)));
)
);
或者您可以選擇使用 V List Box() 和 H List Box() 並檢查索引。
回覆:陣容框跳行你好,
我不知道陣容框有“跳過”功能,但有一個解決方法,需要一些編程,涉及為要跳過的每個插槽插入間隔框(與繪圖大小相同)。
然而,這有點棘手,因為您需要為第一行跳過 0 個插槽,為第二行跳過 1 個插槽,為第三行跳過 2 個插槽;您不需要跳過最後一行的任何插槽。
對不完整的答案表示歉意:我沒有時間編寫您的腳本,但您也許能夠弄清楚。
最好的,
TS