그래프 빌더 > 그래픽 스크립트 추가 > 도형, 아이콘 또는 그림을 사용자 지정하시겠습니까?안녕하세요 JMP 커뮤니티,
그래픽 스크립트 명령인 Circle, Oval 및 Rectangle과 마찬가지로 FrameBox에 사용자 정의된 모양, 아이콘 또는 그림을 삽입할 수 있습니까?
참고로 저는 ~ 아니다 사용자 지정 데이터 포인트 마커를 찾고 있습니다.
다음은 제가 작업하고 있는 그래픽 스크립트 유형의 스니펫입니다(gb는 그래프 빌더 열 지도입니다). 여기에서 원을 사용자 지정 모양으로 바꾸고 싶습니다.
gbr = report (gb);
fb = gbr [FrameBox (1)];
fb << add graphics script (
Fill color (black);
For (i = 0, i <= 24, i++,
For (j = 0.5, j <= 7, j = j+2,
r = (i*8) + (j+0.5);
s = column (dt,"SIZE FDR") [r] / 8;
if (s < 0.02, s = 0.02);
circle ({i,j}, s, "FILL")
)
);
);
도와주셔서 감사합니다.
최상의,
TS
제도법스크립팅Re: Graph Builder > 그래픽 스크립트 추가 > 도형, 아이콘 또는 그림을 사용자 지정하시겠습니까?또 한있다 픽셀경로() 기능. 1000개의 포인트가 있는 성능 문제가 발생하면 PixelPath를 사용하여 기존 경로의 위치를 변경하고 크기를 조정하고 회전할 수 있습니다. (어떻게 하는지 모르겠다. 길() .) 별을 한 번 미리 만든 다음 PixelPath와 함께 다시 사용할 수 있습니다.
Path() 및 PixelPath()는 그래프를 늘릴 때 다르게 동작합니다. Path는 사용자 좌표에 그려지고 그리기는 현재 축에 맞게 늘어납니다. PixelPath는 픽셀 단위로 그려지며 기호의 크기는 변경되지 않습니다.
스크립팅 인덱스에는 PixelPath에 대한 예제가 있습니다. PixelOrigin(x,y)을 사용하고 h,v를 0,0으로 둡니다.
Re: Graph Builder > 그래픽 스크립트 추가 > 도형, 아이콘 또는 그림을 사용자 지정하시겠습니까?
N-pointed starsN-pointed starsN개 별
makestar = Function( {x, y, npoints, inside, outside},
{p = J( 2 * npoints, 3, . ), angle, i, move = 1, draw = 2},
For( i = 1, i < N Rows( p ), 0,
angle = 2 * Pi() * i / N Rows( p );
p[i, 1] = x + Sin( angle ) * inside; // sin and cos are reversed here to
p[i, 2] = y + Cos( angle ) * inside; // make the point be at the top.
p[i, 3] = If( i == 1, move, draw ); // swap sin/cos for point at left.
i += 1;
angle = 2 * Pi() * i / N Rows( p );
p[i, 1] = x + Sin( angle ) * outside; // ditto
p[i, 2] = y + Cos( angle ) * outside;
p[i, 3] = If( i == N Rows( p ), -draw, draw );
i += 1;
);
p; // return
);
New Window( "Example",
gb = Graph Box(
xaxis( Show Major Grid( 1 ) ),
yaxis( Show Major Grid( 1 ) ),
framesize( 500, 500 ),
Pen Color( "red" );
Pen Size( 3 );
Fill Color( "blue" );
npoints = 3; // each star gets more points below
For( xx = 20, xx <= 80, xx += 20,
For( yy = 20, yy <= 80, yy += 20,
// the inside/outside ratio needs to change with more points...
p = makestar( xx, yy, npoints, 2 + npoints / 4, 8 );
Path( p, 1 ); // blue solid fill
Path( p, 0 ); // red outline
npoints += 1;
)
);
)
);
// move the grid lines above the stars
grid = gb[framebox( 1 )] << find seg( SegPlaceholder( 1 ) );
// grid is the original, below the stars
gb[framebox( 1 )] << appendseg( grid ); // makes a copy above
// probably not needed...they are on top of each other...
grid << delete; // delete the original from below
Re: Graph Builder > 그래픽 스크립트 추가 > 도형, 아이콘 또는 그림을 사용자 지정하시겠습니까?친애하는 크레이지,
제안해 주셔서 감사합니다. 이 방법을 살펴보겠습니다. 그러나 내가 구체적으로 찾고 있는 피드백을 얻기에 충분한 세부 정보를 제공하지 않았을 수 있습니다.
제가 작업하고 있는 특정 사례에서는 이들 사이의 대비의 중요성을 나타내기 위해 셀 전체의 히트맵에 모양을 추가하고 있습니다. 지금까지 Circles를 사용하여 모든 것이 계획대로 작동했지만 이제는 별이나 다른 사용자 정의 모양과 같은 다른 모양으로 동일한 작업을 수행하는 방법을 찾고 있습니다.
친애하는,
TSRe: Graph Builder > 그래픽 스크립트 추가 > 도형, 아이콘 또는 그림을 사용자 지정하시겠습니까?경로() 함수?
베지어 보간 그리고 Path()를 사용하는 베지어 트리 (그리고 스크립팅 인덱스는 아마도 베지어 예.)
또한 열 속성 UseForMarker는 그림 열에서 작동하지만 각 마커에 대한 데이터 포인트가 없는 것 같습니다.
UseForMarker 없이 그림이나 아이콘을 얻을 수 있는 유일한 방법은 각 마커에 대해 별도의 그림 세그먼트를 만드는 것입니다. 세그먼트별로 배치할 수 있습니다.