기본 데이터 포인트의 데이터를 사용하여 마우스 오버 시 쿼리를 실행하는 방법은 무엇입니까?안녕,
마우스오버 시 데이터베이스 쿼리를 실행하고 싶습니다.
내 경우에는 수백만 개의 이미지가 있지만 한 번에 하나씩 아주 적은 수의 이미지만 보는 데 관심이 있습니다.
Big Class & Big Class Families 데이터 세트의 데이터를 사용하여 사례를 모형화했습니다.
시나리오는 다음과 같습니다.
에서 ' 큰 수업 ' 체중 대 키를 플롯합니다.
관심의 문제로 JAMES가 어떻게 생겼는지 보고 싶습니다.
'에 그의 사진이 있습니다. 대가족 ’ 그래서 GB Scatter Plot에서 JAMES의 마커 위에 마우스를 올리면 쿼리를 실행해 볼 수 있겠다는 생각이 들었다.
Hover Label / Paste Graphlet 기능을 활용하려고 시도했습니다. 아래 스크립트에서 쿼리를 쉽게 수행할 수 있음을 알 수 있지만 안타깝게도 "JAMES"를 쿼리에 하드 코딩해야 했습니다.
내가 필요한 것은 "JAMES"라는 이름이 마우스 오버 시 변수에 입력되고 나중에 SQL에서 사용된다는 것입니다. 그런 식으로 관심 지점 위로 마우스를 가져가기만 하면 어떤 사람의 이미지도 볼 수 있습니다.
Names Default To Here( 1 );
dt = Open( "$Sample_Data/Big Class.jmp" );
Graph Builder(
Variables( X( :height ), Y( :weight ) ),
Elements( Points( X, Y, Legend( 3 ) ), Smoother( X, Y, Legend( 4 ) ) ),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{Set Graphlet(
Picture(
dt = Open( "$Sample_Data/Big Class Families.jmp" );
//ImageFor = "JAMES";
ImQ = Query(
Table( dt, "t1" ),
"SELECT name, picture From t1 WHERE name = \!"JAMES\!" "
);
)
)}
)
)
);최종 애플리케이션은 결함 위치를 기반으로 웨이퍼 맵을 만든 후 쿼리가 데이터베이스로 돌아가 관심 있는 결함에 대한 이미지를 가져오는 반도체 웨이퍼 검토를 위한 것입니다. 때때로 결함 수가 상당히 많은 경우 검토 목적으로 모든 이미지를 데이터 테이블에 로드하는 것은 실용적이지 않습니다.
감사해요,
필립
데이터 접근대량 맞춤화Re: 기본 데이터 포인트의 데이터를 사용하여 마우스 오버 시 쿼리를 실행하는 방법은 무엇입니까?오늘 하루를 즐겁게 보내셨군요.
이것은 정말 굉장합니다!
감사해요,
나시프
Re: 기본 데이터 포인트의 데이터를 사용하여 마우스 오버 시 쿼리를 실행하는 방법은 무엇입니까?안녕,
약속된 시연을 통해 회신이 지연되어 죄송합니다.
아래 비디오 링크에서 사용중인 응용 프로그램을 볼 수 있습니다.
링크: https://www.loom.com/share/73150b6a45654d789a6d040bb661cddf
비디오에서:
JMP를 사용하여 결함 데이터는 검사 도구 데이터베이스에서 수집됩니다.
그런 다음 JMP는 로트/웨이퍼별로 결함 수를 요약하고 선형 차트로 표시합니다.
관심 있는 웨이퍼가 있는 경우 결함 수 마커 위로 마우스를 가져가면 이전에 수집된 데이터를 사용하여 웨이퍼 결함 레이아웃이 그려집니다.
관심 있는 웨이퍼를 선택하면 웨이퍼 맵에서 결함 마커 위로 마우스를 가져가 이미지 데이터베이스에서 SQL 쿼리를 실행하고 결함 이미지를 표시할 수 있습니다.
이러한 방식으로 데이터 테이블에 많은 수의 결함 이미지를 저장할 필요가 없습니다. 관심 있는 몇 가지 이미지를 기억하고 검토하십시오.
스크립팅에 지원해 주셔서 감사합니다.
- 필립
추신10월 9일 Nordic JMP 사용자 그룹에서 이 애플리케이션을 발표할 예정입니다 
Re: 기본 데이터 포인트의 데이터를 사용하여 마우스 오버 시 쿼리를 실행하는 방법은 무엇입니까?훌륭한!
그것을 고대하고 있습니다.Re: 기본 데이터 포인트의 데이터를 사용하여 마우스 오버 시 쿼리를 실행하는 방법은 무엇입니까?안녕 나시프,
신속한 응답과 훌륭한 솔루션에 감사드립니다. 제가 찾던 바로 그 기능입니다.
나는 최종 애플리케이션의 예를 만들고 그것을 여러분과 공유하려고 노력할 것입니다.
슬라인테,
필립
Re: 기본 데이터 포인트의 데이터를 사용하여 마우스 오버 시 쿼리를 실행하는 방법은 무엇입니까?안녕 @jpol ,
이것은 정말 멋진 예이며 99%를 얻었습니다.
찾고 있는 변수는 로컬 컨텍스트에 있습니다.
ImageFor = local:_name;
graphlet JSL 확장은 Hover Label Execution Context 또는 줄여서 HLEC라고 하는 로컬 블록 내에서 실행됩니다. 여기에는 그래프 정의 및 기본 시각적 요소에서 추출된 데이터 및 메타데이터(열 이름에서와 같이)가 포함된 변수가 포함됩니다. HLEC 변수에 대한 설명서를 찾을 수 있습니다. 여기.
위의 코드 조각에서 나는 레이블이 지정된 열의 내용을 HLEC에서 이름("_" 접두사 포함)으로 사용할 수 있다는 사실을 이용했지만 다음을 사용하여 기본 테이블의 모든 열 내용을 가져올 수도 있었습니다. 다음과 같은 직접 인덱스 참조:
ImageFor = Column(local:_dataTable, "name")[local:_firstRow];
여기에서 Column() 명령을 사용하여 이미지를 가져오기 위해 연 테이블이 아니라 그래프와 연결된 테이블에서 값을 가져오는지 확인하는 것이 중요합니다.
디자인을 구현하는 첨부된 스크립트를 확인한 다음 축소판에 이미지를 표시하고 클릭 시 보조 테이블만 열도록 발전시키십시오.
유사한 시나리오에 대한 다음 커뮤니티 토론을 확인할 수도 있습니다.
* https://community.jmp.com/t5/Discussions/Hover-graphlet-from-another-data-table/mp/296005
* https://community.jmp.com/t5/Discussions/Hover-label/td-p/287358
커뮤니티 파일 교환에서 라벨 뷰어 그리고 위키 리더 은 각각 여러 이미지와 외부 이미지를 표시하는 방법을 보여주는 graphlet 고급 사용자 지정의 예입니다.
마지막으로 Graphlets 및 기본 "배관"에 대한 내 향후 디스커버리 프레젠테이션을 위한 뻔뻔한 플러그입니다.
https://community.jmp.com/t5/Discovery-Summit-Americas-2020/From-Details-on-Demand-to-Wandering-Workflows-Getting-to-know/ta-p/281539
건배,
나시프