내 스크립트에서 대체 행 음영이 1로 설정되어 있고 데이터 테이블의 행이 회색 음영으로 표시되어 있습니다. 사용된 색상을 파란색의 두 가지 음영으로 변경하고 싶습니다. jsl에서 이것을 코딩하는 가장 좋은 방법은 무엇입니까?
귀하의 질문은 약간 희소합니다.TableBox()에 대해 묻는다면 행이 음영 처리되는 색상을 설정할 수 없으며 기본 회색만 설정할 수 있다고 생각합니다.DataBox()에 대해 이야기하는 경우("*.jmp" 파일을 열 때 얻을 수 있음) 셀 색상을 원하는 대로 설정할 수 있습니다. 스크립팅 인덱스.
이 코드는 데이터 테이블에 대해 수행하는 방법에 대한 아이디어를 제공해야 합니다.
dt = New Table( "Test Banding", Add Rows( 4 ),
New Column( "Column 1", Character, "Nominal",
Set Values( {"a", "b", "c", "d", "e"} ) ),
New Column( "Column 2", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [3, 2, 1, 0, -1] ) ),
New Column( "Column 3", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [4, 5, 6, 7, 8] ) )
);
// Create a list of every other row number
gray_rows = {};
for (i = 1, i <= nrows(dt), i+=2,
insertinto(gray_rows, i);
);
// Set every other row to gray
for (i = 1, i <= ncols(dt), i++,
column(dt, i) << Color Cells( {-14803425, gray_rows} );
);

안녕,
저는 순전히 직감과 시행착오를 거쳐 스크립트를 사용하여 i+2 대신 "i+3"으로 변경하여 세 번째 행마다 색을 칠했습니다. 스크립트를 작성하는 방법은 모릅니다.
3번 반복되는 측정값이 있는 표가 있습니다. 한 번에 3줄씩 칠하고 싶습니다. 회색 3줄, 흰색 3줄, 회색 3줄, 흰색 3줄 이런 식으로 번갈아 칠하고 싶습니다. 이런 스크립트는 어떻게 보일까요?
귀하의 도움에 정말 감사드립니다!
우리엘
예를 들어 보겠습니다.
Names Default To Here( 1 );
dt = New Table( "nothing", New Column( "Shaded", Set Values( 1 :: 99 ) ) );
grays = Filter Each( {v, i}, 1 :: N Row( dt ), Mod( Ceiling( i / 3 ), 2 ) );
dt:Shaded << Color Cells( "light gray", grays );