JMP 또는 JSL에서 보로노이 다이어그램 만들기안녕하세요. JMP 환경에서 보로노이 다이어그램을 만들고 싶습니다. 동일한 평면(Z) 내에 위치한 일련의 점 좌표(X & Y)가 있습니다. 단위 면적당 점의 밀도를 표시하는 방법을 원합니다. 보로노이 다이어그램은 이를 달성하는 한 가지 방법입니다. 그것은 그 점 P1과 다음 점 Pn 사이의 유클리드 거리 사이의 중간에 의해 정의되는 점 주변의 경계를 보여줍니다.
Wikipedia의 정의는 다음과 같습니다. https://en.wikipedia.org/wiki/Voronoi_diagram
다음은 만들기에 대한 지침입니다. MATLAB에서 이 유형의 다이어그램
Re: JMP 또는 JSL에서 보로노이 다이어그램 만들기안녕,
우선 Voronoi, old eyes의 철자가 틀린 점 죄송합니다. 답변하려는 질문이 무엇인지 잘 모르겠습니다. 반지름이 150mm인 원형 그림이 주어졌을 때 웨이퍼 맵에서 밀도 또는 클러스터링 패턴을 찾고 있다고 생각합니다. 반도체 제조 데이터에 대한 경험이 있습니다.
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 삼각화(도움말 > 개체 아래의 스크립팅 색인에서 찾을 수 있음)는 Delaunay 훈련화를 생성하고 삼각형, 점 및 가장자리를 가져올 메시지도 제공합니다.
Voronoi 이중 그래프를 계산하기 위해 스크립트를 확장했습니다. 조밀한 지점에 대한 성능을 테스트하지 않았습니다. 대체 알고리즘과 근사치를 가진 많은 웹사이트는 성능을 다룹니다. Craig Hales가 제공한 링크에서 보고된 의사 코드를 사용하여 스크립트를 만들었습니다. 단일 예제 데이터 테이블에서만 테스트했습니다. 그건 그렇고 데이터 테이블은 링크에서 그림을 복사하여 XY 그래프의 배경으로 사용하고 꼭지점을 클릭했을 때 좌표를 캡처하기 위해 쥐덫을 사용하여 생성되었습니다. 가장 왼쪽 지점이 원본보다 조금 더 왼쪽에 있음을 알 수 있습니다. [그렇습니다. JMP는 작업을 처리할 수 있는 다양한 도구를 제공합니다.]새 스크립트가 작업을 수행하는 것 같습니다.응용 프로그램이 준비되어 있지 않고 원형 웨이퍼가 아닌 정사각형 프레임을 사용하며 포인트를 표준화합니다(따라서 X와 Y에서 +/-3 사이의 중심에 있음).
스크립트에는 파일이 포함되어 있습니다. LCombine.jsl ("JMP 스크립팅 언어의 JSL Companion Applications, 2nd Ed."의 스크립트 중 하나). 부착되어 있습니다. 첨부된 스크립트의 경로를 저장한 디렉토리로 변경해야 합니다. 스크립트로 생성된 그림을 첨부했습니다. JMP 12, 13 및 14에서 테스트되었습니다.
보로노이 그래프나 클러스터로 하고 싶은 일처럼 작업의 범위를 좁힐 수 있다면 도움이 될 것입니다.
내 목록에서 높지는 않지만 OpenGL 메쉬 방법이 Voronoi 그래프를 만들 수 있다고 생각합니다. 확실히 말하기 전에 더 많은 학습 / 탐색을해야합니다.
voronoi diagram with JMPvoronoi diagram with JMPJMP를 사용한 보로노이 다이어그램
Re: JMP 또는 JSL에서 보로노이 다이어그램 만들기안녕 gzmorgan0,
이것은 좋은 시작입니다! 도와주셔서 감사합니다.
이전에는 비모수 밀도 플롯을 가지고 놀았지만 이것이 필요한 결과를 제공하는지 확신할 수 없었습니다. 귀하의 게시물은 nonpar 밀도 플롯을 수학적으로 설명하는 올바른 문서를 찾는 데 도움이 되었습니다. 아래에서 그 정의를 공유하고 있습니다. 지금 읽고 나서도 여전히 걱정됩니다.
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) 보로노이 다이어그램을 실제로 보여주기 위해 들로네 삼각분할을 확장하는 것을 도와주실 수 있나요? 나는 수학 자체가 편하지 않습니다.
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 삼각법이 Voroni의 "이중"인 Delaunay 삼각법의 구현이라는 것을 읽은 것을 기억했습니다. "이중" 플롯을 계산하는 알고리즘이 없습니다.
첨부된 샘플 데이터 세트는 여러 Voroni 교육 문서( http://cgl.uni-jena.de/pub/Workshops/WebHome/cgl12new.pdf ).첨부된 PNG 파일은 Voroni 플롯과 Delaunay 테셀레이션(삼각화)의 "이중" 관계를 보여줍니다.이 첨부된 jmp 파일에는 여러 데이터 테이블 스크립트가 첨부되어 있습니다. JMP 12,13 및 14에서 테스트했습니다.
그래프를 생성하는 각 테이블 스크립트를 실행합니다. 단위 면적당 밀도에 관심이 있으므로 그래프 Density of Y By X를 본 다음 역빨간색 삼각형 메뉴를 사용하여 밀도의 3D 보기에 대한 Mesh Plot을 선택합니다. 이러한 보기는 요구 사항을 충족하거나 밀도와 관련하여 더 많은 정보를 제공할 수 있습니다.
밀도 플롯이 목적에 맞지 않고 여전히 Voroni 플롯에 관심이 있는 경우 deldir R 패키지에서 가져올 수 있습니다. 참조 https://flowingdata.com/2016/04/12/voronoi-diagram-and-delaunay-triangulation-in-r/ JMP에는 최근접 이웃 및 거리 알고리즘이 있으므로 누군가가 이 블로그에 Voroni 다이어그램을 만드는 데 필요한 단계(또는 JSL)를 제공할 것입니다.
귀하의 질문은 제가 JMP 삼각화 방법을 테스트하고 X 및 Y 좌표가 표준화된 후 "고전적인" 결과를 생성하는지 확인하도록 동기를 부여했습니다. [ 감사해요! ] 첨부된 JSL에는 삼각형을 그리는 단계가 있습니다.
