グラフビルダーにテキスト注釈を追加するこんにちは、
ウェーハ マップ上の各レチクルにテキスト注釈を追加するグラフィック スクリプトを作成する方法はありますか?
さらに、「Ret」と「%Fail」の2つの列に色を付け、%Fail列でヒートマップを作成し、Ret列を重ねたいのですが、GBで可能ですか?
愛
自動化とスクリプトデータの探索と可視化Re: グラフビルダーにテキスト注釈を追加するこの場合、2列でどのように色分けするのでしょうか?レチクルでメインカラーを定義し、%Failでグラデーションなどを定義するのでしょうか?このような分析のためにシェイプマップファイルを作成することを検討しましたか?
グラフィックスクリプトを使用してテキスト注釈を追加できます
Names Default To Here(1);
dt = Current Data Table();
gb = dt << Graph Builder(
Size(979, 588),
Variables(X(:X), Y(:Y), Overlay(:Ret)),
Elements(Points(X, Y, Legend(10)), Smoother(X, Y, Legend(11)))
);
Summarize(dt, rets = By(:Ret), mx = Mean(:X), my = Mean(Y));
// Lazy option without evaluation
Report(gb)[FrameBox(1)] << Add Graphics Script(
For(i = 1, i <= N Items(rets), i++,
Text Color("Black");
Text Size(12);
Pen Color("Black");
Pen Size(3);
Text(Boxed, Erased, Center Justified, {mx[i], my[i]}, rets[i]);
);
);

Re: グラフビルダーにテキスト注釈を追加するこんにちは@jthi 、
シェイプ マップを試しましたが、行数が 100 万行あるため、JMP の速度が低下します。
グラフィックスクリプトを使用してレチクルの周囲に境界線を描く方法があれば、ウェーハマップ上でそれらのレチクルを境界線で囲むことができ、レチクルを区別できるようになり、凡例の色選択に%Failを追加できると考えていました。
ありがとう、
Re: グラフビルダーにテキスト注釈を追加するこんなこともできます

あるいはヒートマップで

Re: グラフビルダーにテキスト注釈を追加する@jthi素晴らしいですね。コードを共有していただけますか?
Re: グラフビルダーにテキスト注釈を追加する/*""" Reticle outline and names
Author: jthi
Creation Date: 2025-06-25
Creation JMP Version: JMP Pro 18.2.0
"""*/
Names Default To Here(1);
dt = Open("$DOWNLOADS/dataTable.jmp");
Summarize(dt, rets = By(:Ret));
aa = Associative Array();
For Each({curret}, rets,
r = dt << Get Rows Where(:Ret == curret);
tri = Triangulation(X(dt[r, "X"], dt[r, "Y"]));
path = tri << Get Hull Path;
aa[curret] = Associative Array();
aa[curret]["Path"] = path;
aa[curret]["X"] = Median(dt[r, "X"]);
aa[curret]["Y"] = Median(dt[r, "Y"]);
);
gb = dt << Graph Builder(
Size(937, 542),
Show Control Panel(0),
Variables(X(:X), Y(:Y), Color(:"%Fail"n)),
Elements(Points(X, Y, Legend(10)))
);
For Each({{retname, param}}, aa,
Eval(EvalExpr(
Report(gb)[FrameBox(1)] << Add Graphics Script(
Pen Color("Red"); // outline color for reticles
Pen Size(3); // reticle outline size
Path(Expr(param["Path"]), 0); // plots reticle outline
Text Color("Black"); // text color
Text Size(10); // text size for reticle
Pen Color("Black"); // text box outline color
Pen Size(2); // outline size for text box
Text(Boxed, Erased, Center Justified, {Expr(param["X"]), Expr(param["Y"])}, Expr(retname));
);
));
);
ループをグラフィック スクリプト内に移動して、ループ スクリプトを作成しないようにすることもできます (どちらがよいかはテストしていません)。
編集:最終解決策の画像を追加しました
