Eval(Eval Expr(Data Filter Box)内の単一カテゴリDisply皆様、新年あけましておめでとうございます!
Eval(Eval Expr()を使用して気の利いたコードに出くわし、フィルターボックスを一般的な性質のものにしました。つまり、リストにデータを入力するだけで、フィルターボックスは特定のデータテーブルのすべての列を表します。 私のテーブルのいくつかでは、最大25の異なるフィルターの組み合わせがあり、「単一カテゴリー表示」を使用するのが好きです。 ただし、Eval(Eval Expr()を使用すると、リストの最初の名前だけが「単一のカテゴリ」を取得し、残りはリストになります。 それらすべてを単一のカテゴリにする方法はありますか?
半導体機能データテーブルを使用してサンプルスクリプトを添付しました。 スクリプトを実行すると、データフィルターコンテキストボックス(データフィルター)に表示されます。lot_idのみが単一のカテゴリであり、ウェーハは表示されません。 私はそれらの両方(または任意の組み合わせ)を単一のカテゴリーにすることを求めています。
注:分布プロットの実際の表現を手伝ってくれたtxnelson氏にクレジットがあります。
前もって感謝します
スクリプティングRe:Eval(Eval Expr(Data Filter Box)内の単一カテゴリDisply次のようにわずかな変更を加えることができます(Eval内のdtFilter変数に注意してください)。
Eval(
Eval Expr(
dfcb100_S = Data Filter Context Box(
filter100_S = H List Box(
graph_vlb100_S = V List Box(
Lineup Box( N Col( 1 ),
Border Box( Sides( 15 ),
dtFilter = dt << Data Filter(
Local,
Mode( Show( 0 ) ),
Add Filter(
Columns( Expr( filterCol ) )
)
)
)
)
)
)
)
)
);
for(i = 1, i <= N Items(filterCol), i++,
dtFilter << Display(filterCol[i], Size( 188, 16 ), Height( 16 ), "Single Category Display" )
);[フィルターの追加]では、これも機能したため、同時に複数のディスプレイを追加できない場合があると思います。
Eval(
Eval Expr(
dfcb100_S = Data Filter Context Box(
filter100_S = H List Box(
graph_vlb100_S = V List Box(
Lineup Box( N Col( 1 ),
Border Box( Sides( 15 ),
dt << Data Filter(
Local,
Mode( Show( 0 ) ),
Add Filter(
Columns( Expr( filterCol ) ),
Display( Expr( filterCol[1] ), Size( 188, 16 ), Height( 16 ), "Single Category Display" ),
Display( Expr( filterCol[2] ), Size( 188, 16 ), Height( 16 ), "Single Category Display" )
)
)
)
)
)
)
)
)
);Re:Eval(Eval Expr(Data Filter Box)内の単一カテゴリDisplyありがとうジャルモ私は数分で最初のものを試してみます。
2番目のスクリプトの問題は、filterCol [1]が、任意のSQLクエリで数値が1〜5になる可能性があることです。 そのため、そのデータフィルターコンテキストボックスの製品ごとに個別のスクリプトを作成しました。 Expr(Eval Expr(。
Re:Eval(Eval Expr(Data Filter Box)内の単一カテゴリDisply実際、Display()でExpr(filterCol)を除外するだけで実行できるようです。
Eval(
Eval Expr(
dfcb100_S = Data Filter Context Box(
filter100_S = H List Box(
graph_vlb100_S = V List Box(
Lineup Box( N Col( 1 ),
Border Box( Sides( 15 ),
dt << Data Filter(
Local,
Mode( Show( 0 ) ),
Add Filter(
Columns( Expr( filterCol ) ),
Display(Size( 188, 16 ), Height( 16 ), "Single Category Display")
)
)
)
)
)
)
)
)
);Re:Eval(Eval Expr(Data Filter Box)内の単一カテゴリDisply最初のスクリプトは完璧に機能します。 大変感謝いたします。
Re:Eval(Eval Expr(Data Filter Box上記のJSLは複雑すぎるのではないかと思います。 あなたはこのようなことをすることができます:
NamesDefaultToHere(1);
dt = Open( "$sample_data/Semiconductor Capability.jmp" );
// Columns to filter by (in a list)
filterCol = {"lot_id", "wafer"};
// Example report
dist = dt << Distribution(
Stack( 1 ),
Continuous Distribution(
Column( :NPN1 ),
Quantiles( 0 ),
Horizontal Layout( 1 ),
Vertical( 0 ),
Process Capability( Use Column Property Specs )
),
Automatic Recalc( 1 )
);
// Add a data filter
df = dist << Local Data Filter(Add Filter(columns( Eval(filterCol) )));
// Change the display format of all the filter variables
for(c=1, c<=NItems(filterCol), c++, df << Display( Eval(filterCol[c]), "Single Category Display" ));