다중 매개변수 선택안녕,
몇 가지 테스트(Test1, Test2, Test3, Test4, Prepass)별로 test_type_combo를 표로 만드는 다음 스크립트가 있습니다. 코일_공급자_A. 그러면 Yield라는 새 열이 생성됩니다. 여기에서 그래프 빌더를 사용하여 플로팅을 수행합니다. 공급업체에 대한 여러 매개변수가 각각 열에 있는지 알 수 있습니까? coil_supplier_B, coil_supplier_C 및 coil_supplier_D, 어떻게 모든 공급업체를 스크립트에 넣고 모든 사람을 자동 플롯할 수 있습니까(이 경우 총 4개의 플롯이 있음). 아니면 다른 더 좋은 방법이 있다면.
감사합니다.
스크립트:
dt = Current Data Table();
tab= dt << Tabulate(
Add Table(
Column Table(
Grouping Columns( :test_type_combo ),
Analysis Columns(
:Name( "Sum(n_unit)" ),
:Name( "Sum(n_unit_passed)" )
)
),
Row Table(
Grouping Columns(
:work_week,
:coil_supplier_A,
:product_family
)
)
)
);
dtTab= tab << makeIntoDataTable;
dtTab << new column("Yield",numeric,Formula(
(:Name( "Sum(Sum(n_unit_passed), PrePass)" ) /
:Name( "Sum(Sum(n_unit), PrePass)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test1)" ) /
:Name( "Sum(Sum(n_unit), Test1)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test4)" ) / :Name( "Sum(Sum(n_unit), Test4)" )
) * (:Name( "Sum(Sum(n_unit_passed), Test2)" ) /
:Name( "Sum(Sum(n_unit), Test2)" )) * (:Name(
"Sum(Sum(n_unit_passed), Test3)"
) / :Name( "Sum(Sum(n_unit), Test3)" )) * 100
)
);
dtTab << Graph Builder(
Variables(
X( :work_week ),
Y( :PFY ),
Y( :Name( "Sum(Sum(n_unit), Test1)" ) ),
Group X( :product_family ),
Overlay( :coil_supplier_A )
),
Elements(
Position( 1, 1 ),
Points( X, Y, Legend( 6 ) ),
Line( X, Y, Legend( 7 ) )
),
Elements( Position( 1, 2 ), Bar( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model( 6, Base( 0, 0, 0 ), Base( 1, 0, 0 ), Base( 2, 0, 0 ) )}
),
Dispatch(
{},
"graph title",
TextEditBox,
{Set Text( "coil_supplier_A" )}
),
Dispatch( {}, "Y 1 title", TextEditBox, {Set Text( "unit Qty" )} ),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {6, [0, 1, 2], 7, [6, 7, 8], 4, [3, 4, 5]} ),
Position( {0, 1, 2, 6, 7, 8, 3, 4, 5} )}
)
)
);
Re: 여러 매개변수 선택바이런, 그것도 할 것입니다. 감사해요!Re: 여러 매개변수 선택중간 테이블을 만드는 대신...
이런 식으로 작동할까요?
코일 공급업체 열(및 코일 공급업체 열만)을 쌓으십시오.
그러면 모든 코일 공급업체 열이 2열로 줄어들게 됩니다. 하나는 코일 공급업체가 있고 다른 하나는 로트 ID가 있습니다. 로트 ID는 여전히 그래프 빌더 오버레이 역할에 들어가지만 공급업체 ID는 페이지 역할에 들어갑니다(그래프 빌더의 오른쪽 하단(jmp 13 옵션)).
또한 모든 데이터가 누적되어 있기 때문에 count와 pass col에만 연산을 하기 때문에 수식이 쉬워집니다.
Re: 여러 매개변수 선택고마워요, 짐!!
Re: 여러 매개변수 선택다음은 For 루프와 함께 대체를 사용하여 모든 코일 공급업체 출력을 생성하는 한 가지 방법입니다.
Names Default To Here( 1 );
dt = Current Data Table();
VarList = {"coil_supplier_A", "coil_supplier_B", "coil_supplier_C", "coil_supplier_D"};
For( i = 1, i <= N Items( VarList ), i++,
Eval(
Substitute(
Expr(
tab = dt << Tabulate(
Add Table(
Column Table(
Grouping Columns( :test_type_combo ),
Analysis Columns( :Name( "Sum(n_unit)" ), :Name( "Sum(n_unit_passed)" ) )
),
Row Table( Grouping Columns( :work_week, __supplier__, :product_family ) )
)
);
dtTab = tab << makeIntoDataTable;
dtTab << New Column( "Yield",
numeric,
Formula(
(:Name( "Sum(Sum(n_unit_passed), PrePass)" ) / :Name( "Sum(Sum(n_unit), PrePass)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test1)" ) / :Name( "Sum(Sum(n_unit), Test1)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test4)" ) / :Name( "Sum(Sum(n_unit), Test4)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test2)" ) / :Name( "Sum(Sum(n_unit), Test2)" )) * (
:Name( "Sum(Sum(n_unit_passed), Test3)" ) / :Name( "Sum(Sum(n_unit), Test3)" )) * 100
)
);
dtTab << Graph Builder(
Variables(
X( :work_week ),
Y( :Yield ),
Y( :Name( "Sum(Sum(n_unit), Test1)" ) ),
Group X( :product_family ),
Overlay( __supplier__ )
),
Elements( Position( 1, 1 ), Points( X, Y, Legend( 6 ) ), Line( X, Y, Legend( 7 ) ) ),
Elements( Position( 1, 2 ), Bar( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch( {}, "400", ScaleBox, {Legend Model( 6, Base( 0, 0, 0 ), Base( 1, 0, 0 ), Base( 2, 0, 0 ) )} ),
Dispatch( {}, "graph title", TextEditBox, {Set Text( __qsupplier__ )} ),
Dispatch( {}, "Y 1 title", TextEditBox, {Set Text( "unit Qty" )} ),
Dispatch(
{},
"400",
LegendBox,
{Legend Position( {6, [0, 1, 2], 7, [6, 7, 8], 4, [3, 4, 5]} ), Position( {0, 1, 2, 6, 7, 8, 3, 4, 5} )}
)
)
);
),
Expr( __supplier__ ), Parse( ":" || VarList[i] ),
Expr( __qsupplier__ ), VarList[i]
)
)
);Re: 여러 매개변수 선택안녕 카메론,
더 나은 이해를 위해 데이터 세트를 첨부했습니다.
dt <SPAN class="token operator">=</SPAN> <SPAN class="token function">Current Data Table</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
tab<SPAN class="token operator">=</SPAN> dt <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> Tabulate<SPAN class="token punctuation">(</SPAN>
<SPAN class="token function">Add</SPAN> Table<SPAN class="token punctuation">(</SPAN>
<SPAN class="token function">Column</SPAN> Table<SPAN class="token punctuation">(</SPAN>
Grouping Columns<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>test_type_combo <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Analysis Columns<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(n_unit)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(n_unit_passed)"</SPAN> <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token function">Row</SPAN> Table<SPAN class="token punctuation">(</SPAN>
Grouping Columns<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>work_week<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">:</SPAN>coil_supplier_A<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">:</SPAN>product_family
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
dtTab<SPAN class="token operator">=</SPAN> tab <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> makeIntoDataTable<SPAN class="token punctuation">;</SPAN>
dtTab <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> <SPAN class="token function">new column</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token string">"Yield"</SPAN><SPAN class="token punctuation">,</SPAN>numeric<SPAN class="token punctuation">,</SPAN>Formula<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), PrePass)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), PrePass)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), Test1)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test1)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), Test4)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN> <SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test4)"</SPAN> <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit_passed), Test2)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN>
<SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test2)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN>
<SPAN class="token string">"Sum(Sum(n_unit_passed), Test3)"</SPAN>
<SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">/</SPAN> <SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test3)"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">)</SPAN> <SPAN class="token operator">*</SPAN> <SPAN class="token number">100</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
dtTab <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN> Graph Builder<SPAN class="token punctuation">(</SPAN>
Variables<SPAN class="token punctuation">(</SPAN>
X<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>work_week <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Y<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>Yield <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Y<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>Name<SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"Sum(Sum(n_unit), Test1)"</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Group X<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>product_family <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Overlay<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">:</SPAN>coil_supplier_A <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Elements<SPAN class="token punctuation">(</SPAN>
Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Points<SPAN class="token punctuation">(</SPAN> X<SPAN class="token punctuation">,</SPAN> Y<SPAN class="token punctuation">,</SPAN> Legend<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">6</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token function">Line</SPAN><SPAN class="token punctuation">(</SPAN> X<SPAN class="token punctuation">,</SPAN> Y<SPAN class="token punctuation">,</SPAN> Legend<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">7</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Elements<SPAN class="token punctuation">(</SPAN> Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">2</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Bar<SPAN class="token punctuation">(</SPAN> X<SPAN class="token punctuation">,</SPAN> Y<SPAN class="token punctuation">,</SPAN> Legend<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">4</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
SendToReport<SPAN class="token punctuation">(</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"400"</SPAN><SPAN class="token punctuation">,</SPAN>
ScaleBox<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Legend Model<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> Base<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Base<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN> Base<SPAN class="token punctuation">(</SPAN> <SPAN class="token number">2</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">0</SPAN> <SPAN class="token punctuation">)</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"graph title"</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token function">TextEditBox</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Set <SPAN class="token function">Text</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"coil_supplier_A"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token string">"Y 1 title"</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token function">TextEditBox</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">{</SPAN>Set <SPAN class="token function">Text</SPAN><SPAN class="token punctuation">(</SPAN> <SPAN class="token string">"unit Qty"</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Dispatch<SPAN class="token punctuation">(</SPAN>
<SPAN class="token punctuation">{</SPAN><SPAN class="token punctuation">}</SPAN><SPAN class="token punctuation">,</SPAN>
<SPAN class="token string">"400"</SPAN><SPAN class="token punctuation">,</SPAN>
LegendBox<SPAN class="token punctuation">,</SPAN>
<SPAN class="token punctuation">{</SPAN>Legend Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">[</SPAN><SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">2</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">7</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">[</SPAN><SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">7</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">8</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">4</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token punctuation">[</SPAN><SPAN class="token number">3</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">4</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">5</SPAN><SPAN class="token punctuation">]</SPAN><SPAN class="token punctuation">}</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">,</SPAN>
Position<SPAN class="token punctuation">(</SPAN> <SPAN class="token punctuation">{</SPAN><SPAN class="token number">0</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">1</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">2</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">6</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">7</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">8</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">3</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">4</SPAN><SPAN class="token punctuation">,</SPAN> <SPAN class="token number">5</SPAN><SPAN class="token punctuation">}</SPAN> <SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">}</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN>
<SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
감사합니다.
아담
Re: 여러 매개변수 선택안녕 @아담 ,
설명하는 내용을 더 잘 이해하려면 샘플 데이터 세트를 보는 것이 도움이 될 것입니다.IP 문제가 있는 경우 익명화 기능을 사용하거나 스크립트와 함께 작동하는 더미 데이터로 예제 데이터 세트를 생성할 수 있습니다.