그래픽 마커의 아이콘안녕,
저는 현재 사용자의 다양한 선택을 통해 생성되는 차트에 사용될 마커 기호에 대한 선택권을 사용자에게 제공하고 싶은 대시보드를 작성하고 있습니다.
목록 상자에서 몇 가지 표준 아이콘을 사용한 첨부한 작은 데모 스크립트의 라인을 따라 각 기호의 모양을 보여주는 옵션 목록의 각 요소에 아이콘을 추가하고 싶습니다. 내가 의미하는 바를 설명하기 위해 왼쪽에 있지만 분명히 오른쪽에 표시된 실제 마커 기호 세트로 바꾸고 싶습니다.
내장된 JMP 아이콘 추가 기능을 사용하여 빠르게 검색해 보면 이 32개의 기호가 이름으로 액세스할 수 있는 미리 정의된 아이콘으로 존재하지 않는다는 것을 알 수 있습니다. 나만의 아이콘. 충분히 쉽게 할 수 있지만 약간 지루할 수 있습니다. 그래서 시도하기 전에 이 문제를 해결하는 더 쉬운 방법을 제안할 수 있는 사람이 있습니까?
Clear Log();
Marker_List = {{" Dot", "WinHelpSearch"}, {" Square", "WinHelpAbout"}, {" Cross", "SearchIndex"},
{" Filled Triangle", "Gear"}, {" Asterisk", "ListItemUp"}, {" Diamond", "ListItemDown"}};
Marker_ListBox = List Box( Marker_List );
New Window( "Markers",
H List Box(
Panel Box( "Select a Marker Symbol", Marker_ListBox ),
// Marker_ListBox,
Panel Box( "All 32 Marker Symbols",
Graph Box(
FrameSize( 300, 300 ),
Y Scale( -1, 16 ),
X Scale( 0, 7 ),
For(
i = 0;
jj = 15;,
i < 16;
jj >= 0;,
i++;
jj--;, // 16 rows, 2 columns
Marker Size( 3 );
Marker( i, {1, jj + .2} ); // markers 0-15
Marker( i + 16, {4, jj + .2} ); // markers 16-31
Text( {1.5, jj}, "Marker ", i ); // marker labels 0-15
Text( {4.5, jj}, "Marker ", i + 16 ); // marker labels 16-31
)
)
)
)
);
많은 감사
Re: 그래픽 마커 아이콘안녕하세요 Craige - 매우 유익한 스크립트입니다. 제가 하고 있는 일의 맥락에서 이와 같은 것에 대한 여러 용도를 볼 수 있습니다!
많은 감사
Re: 그래픽 마커 아이콘https://community.jmp.com/t5/JSL-Cookbook/Custom-Button-Icons/ta-p/50294 를 참조하세요. 아이디어 주셔서 감사합니다!
button icons버튼 아이콘
Re: 그래픽 마커 아이콘영리한! 아니면 메뉴 자체에 대한 아이디어를 완전히 포기하고 사용자에게 선택할 수 있는 마커 그리드를 제공할 수도 있습니다. 첨부된 스크립트를 기반으로 하는 작업이 그렇게 할 것입니다.
한 가지 간단한 질문 - 실제로 스크롤하지 않고 두 축을 스크롤하는 기능을 비활성화하려면 어떻게 해야 합니까? ("손" 기호가 나타날 때까지 적어도 Y축 위로 마우스를 가져간 다음 이 축을 위나 아래로 드래그하면 됩니다) 축? 귀하의 예에서와 같이 축을 억제하면 낮은 값과 높은 값, 증분 및 눈금선을 정의하는 기능을 잃게 됩니다.
정말 감사합니다. 매우 유용했습니다.
Clear Log();
x0 = -1;
tb = Text Box( "Click on a Marker", <<JUSTIFY text=""> -0.5, 채우기 색상( {0, 255, 255} ); 직사각형({x0, y0}, {x0 + 1, y0 + 1}, 8); ); For( i = 0, i <= 7, i++, For( j = 0, j <= 3, j++, k = 4 * i + j; 마커( k, {j + 0.5, 8 - (i + 0.5) } ) ); ); gb[AxisBox( 1 )] << Max( 8 ); gb[AxisBox( 2 )] << Max( 4 ); For( i = 1, i <= 2, i++, gb[AxisBox( i )] << 주요 그리드 표시( 1 ) << Min( 0 ) << inc( 1 ) << 레이블 표시( 0 ) << 표시 주요 틱( 0 ) << 축 레이블 제거() ); 새 창( "마커 선택 그리드", 라인업 상자( N Col( 1 )), gb, 테두리 상자( tb, < <SIDES></SIDES></JUSTIFY>
Re: 그래픽 마커 아이콘그래프 상자의 콜박스가 포함된 테이블 상자를 사용하여 원래 목록 상자를 표시할 수 있습니다. 시작하는 데 도움이 되는 몇 가지 코드는 다음과 같습니다.
nw = new window("test markers",
tb = tablebox(
marker_cb = col box("",
graph box(
FrameSize( 10, 10 ), Y Scale( 0, 2 ), X Scale( 0, 2 ), suppressaxes(1),
marker(15, {1, 1}),
),
graph box(
FrameSize( 10, 10 ), Y Scale( 0, 2 ), X Scale( 0, 2 ), suppressaxes(1),
marker(16, {1, 1}),
)
),
stringcolbox("Marker",
{"15", "16"}
)
)
);
tb << set selectable rows(1);
