JSL을 사용하여 색상 그라데이션 스케일 편집안녕 모두,
예를 들어이 데이터 테이블이 있습니다

test = Graph Builder(
Variables( X( :X ), Y( :Y ), Color( :Value ) ),
Elements( Points( X, Y, Legend( 23 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
23,
Properties(
0,
{gradient(
{Scale Values( [-2 2] ), Label Format( "Fixed Dec", 15, 3 )}
)},
Item ID( "Value", 1 )
)
)}
)
)
);위의 스크립트를 실행하여 색상 그라데이션 +/-2 표준 편차로 아래 그래프를 얻습니다. 이렇게 하면 데이터 세트가 큰 경우 전단지를 표시하지 않는 데 도움이 됩니다.
아래 그래프에서 내가 하는 유일한 일은 색상 그라디언트를 마우스 오른쪽 버튼으로 클릭하고 스케일 유형을 선형으로 변경하는 것입니다(선형 스케일에서 생각하기가 더 쉽기 때문입니다). 이 단계를 스크립팅하는 데 어려움을 겪고 있습니다.

참고로 그래디언트를 조정하기 전에 그래프를 만들 때 기본값인 아래 그래프는 원하지 않습니다.

내가 얻은 가장 가까운 것은 아래에 있지만 표준 편차 한계에 대해 입력한 것인 -2에서 2로 선형으로 스케일링을 설정합니다.
test << Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
3,
Properties(
0,
{gradient(
{ Scale Values[ ], Label Format( "Fixed Dec", 15, 4 ),
Scale Type( "Linear" )}
)},
Item ID( "Entry X Offset", 1 )
)
)}
)어떤 생각이라도 대단히 감사합니다! - 에반
Re: JSL을 사용하여 색상 그라데이션 스케일 편집다음은 열 중 하나에서 그라데이션을 동적으로 결정하는 예입니다.
dt = New Table( "Untitled", Add Rows( 4 ),
New Column( "X", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4] ) ),
New Column( "Y", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [4, 1, 3, 2] ) ),
New Column( "Value", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 1, 2, 2] ) )
);
dtcol = column(dt, "Y");
one_min = col min(dtcol);
one_max = col max(dtcol);
one_avg = col mean(dtcol);
scale_matrix = matrix({one_min, one_avg, one_max});
Graph Builder(
Show Control Panel( 0 ),
Variables( X( :X ), Y( :Y ), Color( :Value ) ),
Elements( Points( X, Y, Legend( 9 ) ) ),
SendToReport(
Dispatch( {}, "400", ScaleBox,
{Legend Model( 9,
Properties( 0,
{gradient( {Scale Values( scale_matrix )} )},
Item ID( "Value", 1 )
)
)}
)
)
);Re: JSL을 사용하여 색상 그라데이션 스케일 편집연습의 요점은 JSL GB가 맞춤형 척도에 대해 무엇을 생성하는지 확인하는 것입니다.일단 가지고 있으면 프로그래밍 방식으로 각 데이터 세트의 스케일링을 결정하고 런타임에 GB JSL로 대체할 수 있습니다.
Re: JSL을 사용하여 색상 그라데이션 스케일 편집답장을 보내 주셔서 감사합니다!
하지만 Graph Builder에서 수동 작업을 수행하고 싶지는 않습니다. 내 (더 큰) 스크립트의 아이디어는 각 그래프 및 데이터 세트에 대해 적절한 크기 조정으로 많은 그래프를 자동으로 만드는 것입니다. 패턴을 보려면 척도가 각 열/데이터 집합에 대해 개별적으로 조정되어야 합니다. 수동으로 하기에는 너무 많습니다.Re: JSL을 사용하여 색상 그라데이션 스케일 편집GB 단위의 그래프에서 작업하고 배율을 원하는 대로 정확하게 설정합니다.그런 다음 빨간색 삼각형을 클릭하고 스크립트 > 스크립트 창에 저장을 선택합니다.스케일을 약간 변경한 후 얻은 결과는 다음과 같습니다.
Graph Builder(
Show Control Panel( 0 ),
Variables( X( :X ), Y( :Y ), Color( :Value ) ),
Elements( Points( X, Y, Legend( 9 ) ) ),
SendToReport(
Dispatch( {}, "400", ScaleBox,
{Legend Model( 9,
Properties( 0,
{gradient( {Scale Values( [2.2 2.6 3.2] )} )},
Item ID( "Value", 1 )
)
)}
)
)
);