JMPまたはJSLでのボロノイ図の作成JMP 環境でボロノイ図を作成したいと考えています。 同じ平面 (Z) 内にあるポイント座標 (X & Y) のセットがあります。 単位面積あたりの点の密度を表示する方法が欲しいです。 ボロノイ図は、これを実現する 1 つの方法です。 その点 P1 と次の点 Pn の間のユークリッド距離の中間で定義される点の周りの境界を示します。
ウィキペディアの定義は次のとおりです。 https://en.wikipedia.org/wiki/Voronoi_diagram
作成手順はこちらMATLAB でのこのタイプのダイアグラム
Re: JMP または JSL でボロノイ図を作成するやあ、
まずボロノイ、老眼の誤字脱字すみません。 どの質問に答えようとしているかわかりません。 半径 150 mm の円形の図を考えると、ウェーハ マップ上で密度またはクラスタリング パターンを探しているのではないかと思います。 半導体製造データの経験があります。
JMP には多くのクラスタリング手法があり、JMP12 以降では、パターンの類似性に基づいてウェーハをクラスタ化できるものを含む、いくつかの空間パターン手法が提供されています。以下のスクリプトは、異なる欠陥密度を持つ 125 ウェーハを表す JMP サンプル データ テーブルを開き、パターンによってウェーハを分類/クラスタ化します。 1枚でも可能です。
Names Default to Here(1);
dt = Open("$sample_data/Wafer Stacked.jmp");
dt << run script( "Spatial Cluster of Defects");
spWin = Window("Wafer Stacked - Hierarchical Cluster of Defects");
spClust = (spWin<< child)<<CHILD></CHILD>
このタスクに取り組んだのは、メッシュ メソッドを持つ opengl を使用して 3D 地形を生成する方法をもっと学ぼうとしていたからです。 しかし、私はまだ彼らについて十分に知りません。 空間幾何学に興味があるので、デュアル ボロノイ グラフの作成に取り組むことにしました。 最初の返信で述べたように、JMP Triangularization (オブジェクトの下の [ヘルプ] > [スクリプト インデックス] で見つけることができます) は Delaunay トレイングラリゼーションを作成し、get、三角形、ポイント、およびエッジへのメッセージも提供します。
スクリプトを拡張して、ボロノイ双対グラフを計算しました。 高密度ポイントのパフォーマンスはテストしていません。代替アルゴリズムと概算を使用する Web サイトの多くは、パフォーマンスに対処しています。 Craig Hales が提供したリンクで報告された疑似コードを使用して、スクリプトを作成しました。 単一のサンプルデータテーブルでのみテストしました。 ちなみに、データ テーブルは、リンクから画像をコピーし、それを XY グラフの背景として使用し、頂点をクリックしたときにマウストラップを使用して座標をキャプチャすることによって生成されました。 一番左のポイントが元のポイントよりも少し左にあることに注意してください。 [はい、JMP はタスクに取り組むための多数のツールを提供します。]新しいスクリプトは仕事をしているようです。アプリケーションに対応しておらず、円形のウェーハではなく正方形のフレームを使用しており、ポイントを標準化しています (X と Y の +/-3 を中心にしています)。
スクリプトにはファイルが含まれていますLCombin.jsl (「JMP スクリプト言語の JSL コンパニオン アプリケーション、第 2 版」のスクリプトの 1 つ)。 付いています。 添付のスクリプトのパスを、保存したディレクトリに変更する必要があります。 スクリプトによって生成された画像を添付しました。 JMP 12、13、および 14 でテストされました。
ボロノイグラフやクラスターでやりたいことなど、タスクを絞り込んでいただけると助かります。
私のリストでは高くありませんが、opengl メッシュ メソッドでボロノイ グラフを作成できる可能性があると思います。 決定的なことを言う前に、もっと学習/探索を行う必要があります。
voronoi diagram with JMPJMPによるボロノイ図
Re: JMP または JSL でボロノイ図を作成するgzmorgan0 さん、こんにちは。
これは素晴らしいスタートです! ご協力ありがとうございました。
以前、ノンパラメトリック密度プロットをいじりましたが、これが必要な結果を提供しているかどうか確信が持てませんでした。 あなたの投稿は、非標準密度プロットを数学的に説明するための適切なドキュメントを見つけるのに役立ちました. その定義を以下に共有します。 読み終わった今でも気になります。
Nonpar Density estimates a smooth nonparametric bivariate surface that describes the density
of data points. The plot adds a set of contour lines showing the density (Figure 5.16). The
contour lines are quantile contours in 5% intervals. This means that about 5% of the points
generated from the estimated nonparametric distribution are below the lowest contour, 10%
are below the next contour, and so on. The highest contour has about 95% of the points below
it.
等高線は素晴らしいですが、ポイントを等分位数に分割しているだけです。 それらは、ポイントが私のエリア内にどれだけ均等に広がっているかを必ずしも示しているわけではありません. 私の要点を伝えるために、データ ポイント配列の例を添付しました。 これらの等高線はそれぞれ等しい量を表していますか?表面積?
いくつかのフォローアップの質問:
(1) ノンパー等高線データを取得し、それを操作して単位面積あたりの密度を表示する方法はありますか? おそらくこれは、分位数密度内の赤い三角形メニューから「密度グリッドを保存」オプションが行うことです。
(2) 別の配色テーマを使用できますか? 私はスペクトル色のテーマに強く反対します。 しかしカラーテーマ()機能は動作しません非標準密度() JMP13で。
(3) Delaunay 三角形分割を拡張して実際にボロノイ図を表示するのを手伝ってくれませんか? 私自身、数学が苦手です。
Re: JMP または JSL でボロノイ図を作成するいい例!
ここでの議論: https://stackoverflow.com/questions/85275/how-do-i-derive-a-voronoi-diagram-given-its-point-set-and-its-delaunay-triangula
Re: JMP または JSL でボロノイ図を作成する私はこの分野の専門家ではありませんが、JMP Triangularization は、Voroni の「双対」である Delaunay 三角形化の実装であると読んだことを思い出しました。 「デュアル」プロットを計算するためのアルゴリズムがありません。
いくつかの Voroni トレーニング ドキュメントに見られる点のセットをエミュレートするために作成した、voroni.jmp というサンプル データ セットが添付されています ( http://cgl.uni-jena.de/pub/Workshops/WebHome/cgl12new.pdf )。添付の PNG ファイルは、Voroni プロットと Delaunay テッセレーション (三角化) の「二重」関係を示しています。この添付の jmp ファイルには、いくつかのデータ テーブル スクリプトが添付されています。 JMP 12、13、および 14 でテストしました。
グラフを作成する各テーブル スクリプトを実行します。 単位面積あたりの密度に関心があるので、Density of Y By X のグラフを見て、赤い逆三角形のメニューを使用して、密度の 3D ビューのメッシュ プロットを選択します。 これらのビューは、ニーズを満たすか、密度に関してより有益な情報を提供する可能性があります。
密度プロットが目的を果たさず、それでもボロニ プロットに興味がある場合は、deldir R パッケージから入手できます。 https://flowingdata.com/2016/04/12/voronoi-diagram-and-delaunay-triangulation-in-r/ JMP には最近傍アルゴリズムと距離アルゴリズムがあるため、ボロニ図を作成するために必要な手順 (または JSL) を誰かがこのブログに提供するかもしれません。
あなたの質問は、JMP Triangularization メソッドをテストし、それが「古典的な」結果を生成することを確認する動機となりました... X 座標と Y 座標が標準化された後。 [ ありがとう! ] 添付の JSL には、三角形を描画するための手順が含まれています。
