仕様限界を動的に変更し、それに応じてプロットを更新します添付のサンプル データ テーブルとサンプル スクリプトは、ユーザーが列を変更し、それに応じてプロットを更新できるようにするために使用しています。 ユーザーが列プロパティの仕様制限を変更してプロットを更新できるようにする追加の表示ボックスを追加したいと考えています。 これは、工程能力分析 << インタラクティブな能力プロットのようなものですが、スライド バーの代わりに、LSL、USL、ターゲットの数値編集ボックスになります。
私が探しているものを十分に説明できたと思います。
ありがとう
データのブレンディングとクリーンアップRe: 仕様制限を動的に変更し、それに応じてプロットを更新するスクリプト ガイド、スクリプト インデックス、ディスカッション フォーラムを定期的にご利用いただいていると聞いてうれしく思います。ただし、スクリプト ガイドを読むことをお勧めするのは、項目を調べるためにただ手元に置いておけばよいということではありません。これは JSL 学習の根幹であり、実際にはあまり良い参考書ではないと思います。私の提案は、文字通りマニュアルを前から後ろまで読むことです。JSL の本当の基礎を示します。このドキュメントを理解したら、Scripting Index が毎日の参照ツールになります。
改めて、このドキュメントをご利用いただき誠にありがとうございます。時間を見つけてスクリプト ガイドをよく読んでいただければ幸いです。
Re: 仕様制限を動的に変更し、それに応じてプロットを更新するネルソンさん、ありがとうございます。提供していただいたコードのスニペットにより、列のプロパティを新しい制限に変更したり、必要に応じて古い制限に戻すことができました。
スクリプト ガイドのコメントに関しては、私はそれを持っています。コードを作成するときは常にスクリプト インデックスとディスカッション掲示板が開かれますが、特定のタスクを達成する方法があまり明確ではないことがあります。 欲しいものを検索可能なものに表現しようとしてもうまくいかない場合があり、最後の手段として、ここにあなたのような専門家に質問を投稿するよう促されます。
Re: 仕様制限を動的に変更し、それに応じてプロットを更新する- コミュニティ ディスカッション フォーラムでは、常にあなたが望むものの具体的な例が提供されるわけではありません。必要なのは、JMP ドキュメント ライブラリにあるスクリプト ガイドを読むことです。これにより、スクリプト環境の詳細が提供され、正確な例を提供されなくても、そこから独自の JSL を作成できるようになります。
- 仕様制限ボックスに値を入力するスクリプトへの小さな変更を添付します。

Re: 仕様制限を動的に変更し、それに応じてプロットを更新する私はあなたのコードをすべて見ていませんでした。 しかし、「」に関しては、列プロパティにリストされている現在の仕様制限を任意の数値編集ボックスに最初に入力する方法が見つからないようです。 ' 場合は、この古いコードが役立つかもしれません。
// ian.cox@jmp.com: 02Jun2005
NamesDefaultToHere(1);
// ******************************************************************************************
// Given a column reference, returns the spec limits in a vector, [lower, upper, target]:
// If a limit is not defined it is returned as .
// ******************************************************************************************
getSpecs = Function({col}, {Default Local},
// Note that the number of arguments in slp below can change! It can be 0 (if the
// property is not even defined) or 1, 2 or 3
slp = col << GetProperty("Spec Limits");
// Assume that nothing is defined . . .
l = .; u = .; t = .;
// Find out what is defined . . .
for(i=1, i<=NArg(slp), i++,
thisExpr = Arg(slp, i);
sType = Char(Head(thisExpr));
if (
sType == "LSL", l = Arg(thisExpr, 1),
sType == "USL", u = Arg(thisExpr, 1),
sType == "Target", t = Arg(thisExpr, 1)
)
);
Matrix({l, u, t})
);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
someSpecs = getSpecs(Column(dt, "NPN1"));
nw =
NewWindow("Edit Spec Limits",
lsBox = TextEditBox(someSpecs[1]),
usBox = TextEditBox(someSpecs[2]),
tarBox = TextEditBox(someSpecs[3])
);Re: 仕様制限を動的に変更し、それに応じてプロットを更新するありがとう! これらのフォーラムを検索していますが、列プロパティにリストされている現在の仕様制限を任意の数値編集ボックスに最初に入力する方法が見つからないようです。
添付された新しいスクリプトを実行すると、テキスト編集ボックス「テスト」に、配布用に選択された現在の列が自動的に入力されることがわかります。 これが発生した場合、スクリプトで現在の仕様制限を取得し、LSL、ターゲット、USL (該当する場合) を設定できるようにしたいと思います。 その後、新しい仕様制限を入力し、[新しい仕様制限をロード] ボタンをクリックすると、列プロパティの [仕様制限] が新しい数値で更新されます。 また、古い仕様制限を保存し、完了したら列に再割り当てできるようにしたいと考えています。
Re: 仕様制限を動的に変更し、それに応じてプロットを更新するそのセクションは、Distribution 出力を生成する JSL です。 したがって、そこは新しいボックスを追加する場所ではありません。 私が参照していたセクションは、RF テストのアウトライン ボックスを定義するセクションです。Re: 仕様制限を動的に変更し、それに応じてプロットを更新するそれが計画でしたが、ボックスを現在の「^ycols_Test^」で更新し、数値編集ボックスを仕様制限列プロパティで更新したいと考えています。 「\[gb_expr_Test[^i^]」内に新しいボックスを追加する必要がありますか、それともボックスを保持する新しいボックスを作成する必要がありますか?
Re: 仕様制限を動的に変更し、それに応じてプロットを更新するおそらく、RF テストのアウトライン ボックスの下に、USL、ターゲット、および LSL の数値編集ボックスを含む 2 番目のアウトライン ボックスを追加するだけです。 おそらく 3 つの異なる値を変更しているため、グラフを更新するためにクリックする必要があるボタン ボックスを追加すると思います。