Graph Builder의 "크기"를 축에 맞게 조정제조된 제품 표면에서 발견된 결함에 대한 데이터 세트가 다음과 같다고 가정해 보겠습니다.
| 스엔 | (센티) | 와이(cm) | 직경(cm) |
| 0001 | 2.3 | 1.15 | 0.04 |
| 0001 | 2.7 | 0.44 | 0.12 |
| 0001 | 1.5 | 2.6 | 0.35 |
| 0002 | 5.4 | 1.9 | 0.17 |
| 0002 | 3.1 | 4.1 | 0.59 |
그래프 빌더에서 SN에 대해 로컬 데이터 필터를 적용하고 X(cm)->X, Y(cm)->Y, Diameter(cm)->Size를 플롯할 때 결과 점 크기를 플롯에 축척에 맞게 그릴 수 있는 방법이 있습니까?
데이터 탐색 및 시각화Re: Graph Builder의 "크기"를 축에 맞게 조정하기쉬운 솔루션이지만 완벽하게 확장되지는 않음

조금만 클릭하면 문제가 해결됩니다.
그래프 작성기에서 X와 Y를 X와 Y축 상자에 넣은 다음 SN을 색상 역할에, 직경을 크기 역할에 끌어 넣었습니다.
스크립트는 다음과 같습니다.
Graph Builder(
Size( 409, 391 ),
Variables(
X( :"X(cm)"n ),
Y( :"Y(cm)"n ),
Color( :SN ),
Size( :"Diameter(cm)"n )
),
Elements( Points( X, Y, Legend( 9 ) ) )
);
Re: Graph Builder의 "크기"를 축에 맞게 조정하기질문에서 프로세스를 잘 재현한 것 같습니다. 누군가가 Shift-클릭 옵션이나 스케일링에 도움이 되는 다른 것을 알고 있기를 바랐습니다.
Re: Graph Builder의 "크기"를 축에 맞게 조정하기그래픽 스크립트로 이 작업을 해야 할 것 같습니다. 아래는 매우 빠르고 해킹적인 솔루션으로, 무엇을 할 수 있는지 아이디어를 제공할 수 있습니다.
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(5),
Compress File When Saved(1),
New Column("SN", Numeric, "Continuous", Format("Best", 12), Set Values([1, 1, 1, 2, 2])),
New Column("X(cm)", Numeric, "Continuous", Set Values([2.2999999999999998, 2.7000000000000002, 1.5, 5.4000000000000004, 3.1000000000000001])),
New Column("Y(cm)", Numeric, "Continuous", Set Values([1.1499999999999999, 0.44, 2.6000000000000001, 1.8999999999999999, 4.0999999999999996])),
New Column("Diameter(cm)",
Numeric,
"Continuous",
Set Values([0.040000000000000001, 0.12, 0.34999999999999998, 0.17000000000000001, 0.58999999999999997])
)
);
gb = dt << Graph Builder(
Size(518, 454),
Show Control Panel(0),
Lock Scales(1),
Variables(X(:"X(cm)"n), Y(:"Y(cm)"n), Size(:"Diameter(cm)"n)),
Elements(Points(X, Y, Legend(5))),
Local Data Filter(Add Filter(columns(:SN), Modeling Type(:SN, Nominal)))
);
frame = Report(gb)[FrameBox(1)];
Eval(EvalExpr(
frame << Add Graphics Script(
cur_gb = Expr(Report(gb));
fb = cur_gb[FrameBox(1)];
ms = fb << Find Seg(Marker Seg(1));
xs = ms << Get X Values;
ys = ms << Get Y Values;
For(i = 1, i <= N Items(xs), i++,
dt = cur_gb << Get Data Table;
m_rows = dt << Get Rows Where(:"X(cm)"n == xs[i] & :"Y(cm)"n);
diam = dt[m_rows, "Diameter(cm)"][1];
Circle({xs[i], ys[i]}, diam/2);
);
);
));

또한 Circle의 반지름이 어떻게 동작하는지 읽어보세요 https://www.jmp.com/support/help/en/18.0/#page/jmp/graphics-functions.shtml?os=win&source=application#ww2626013
Re: Graph Builder의 "크기"를 축에 맞게 조정하기@jthi , 감사합니다. 당신은 분명히 인상적인 jsl 실력을 가지고 계시네요!
이건 JMP에 있어야 할 기능인 듯하고, 마커 크기 설정에 쉽게 접을 수 있을 것 같습니다(적어도 UI 관점에서는). 위시리스트에 추가하겠습니다.
Re: Graph Builder의 "크기"를 축에 맞게 조정하기위시리스트 항목이 여기에 게시되었습니다:
그래프 빌더: 크기 드롭 존을 사용하여 점의 축 인식 크기 조정 활성화 - JMP 사용자 커뮤니티
@jthi -- 위의 예시 이미지를 위시리스트 항목에 복사/붙여넣기 해도 괜찮을까요?
Re: Graph Builder의 "크기"를 축에 맞게 조정하기물론입니다. Circle에서 "FILL" 인수를 사용하도록 약간 수정할 수 있으므로 다음과 같이 보일 것입니다(이렇게 할 때 범례를 숨기는 것이 좋습니다. 원에는 기본 마커가 아닌 크기 정보가 들어 있기 때문입니다)

Re: Graph Builder의 "크기"를 축에 맞게 조정하기저는 이 토론 내용을 전부 이해하지는 못했지만, 몇 가지 참고 사항은 관련이 있을 수 있다고 생각했습니다.
- 마우스 오른쪽 클릭 > 그래프 > 크기/축척 > 아이소메트릭 크기에 "아이소메트릭 크기" 명령이 있습니다. 그래프의 크기를 조정하여 X와 Y가 픽셀당 동일한 값을 갖도록 합니다. 하지만 지속되지는 않습니다.
- 크기 변수는 지름이 아닌 원의 면적으로 표현됩니다.
- 몇 버전 전에 우리는 마커와 그래프 빌더에 Marker Draw Expo 기능을 추가했습니다(포인트 빨간색 삼각형 메뉴 아래에 있는 Shape Expressions라고 불립니다).

Graph Builder(
Size( 496, 501 ),
Show Control Panel( 0 ),
Lock Scales(1),
Variables( X( :"X(cm)"n ), Y( :"Y(cm)"n ) ),
Elements(
Points( X, Y, Legend( 5 ),
Set Shape Expression(
Expr(
Function( {this seg, this row, x, y, pixel size, row state},
{r = :"Diameter(cm)"n / 2},
Oval( x - r, y + r, x + r, y - r, 1 )
)
)
)
)
),
Local Data Filter( Add Filter( columns( :SN ), Modeling Type( :SN, Nominal ) ) ),
SendToReport(
Dispatch( {}, "Graph Builder", FrameBox, {Size To Isometric} )
)
);