값의 마지막 3자를 기준으로 한 주문 수준안녕 -
플롯에서 x축의 값 순서를 오름차순으로 지정하고 싶습니다. 문제는 이 값이 영숫자 문자열이고 마지막 3자만 순서를 나타내는 것입니다.
예를 들어, 플롯에서 왼쪽에서 오른쪽으로 다음 순서대로 보고 싶습니다.
1: YRFCA1
2: YRTCB1
3: YRACB2
4: YRTCC0
행 및 값 순서 수준은 데이터를 다른 방식으로 정렬했습니다.
위의 값의 하위 문자열을 수행하고 주문하기 전에 마지막 3개 문자에만 집중할 수 있지만 플롯에 전체 6개 문자열을 표시하는 방법을 잘 모르겠습니다.
JSL에서 이것을 구현할 수 있는 방법에 대한 의견을 주셔서 감사합니다.
감사!
스크립팅Re: 값의 마지막 3자를 기준으로 한 주문 수준아마도 이런 식일 것입니다. GUI에서 변환 열을 만든 다음 저장했습니다. 변환할 변수를 마우스 오른쪽 버튼으로 클릭하고(열 선택기에서) 변환->수식을 선택합니다. 그런 다음 새 변환 변수를 그래프 빌더로 끌어다 놓습니다.
Graph Builder(
Size( 893, 823 ),
Show Control Panel( 0 ),
Variables(
X( :name ),
Y(
Transform Column(
"Transform[name]",
Character,
Nominal,
Formula(
Right( :name, 3 ) || "_" || Left( :name, Length( :name ) - 3 )
)
)
)
),
Elements( Points( X, Y, Legend( 8 ) ) )
);
마지막 세 글자를 이름 앞으로 이동
Re: 값의 마지막 3자를 기준으로 한 주문 수준마지막 3자를 기준으로 테이블을 정렬한 다음(먼저 마지막 3자의 하위 문자열을 가져옴) 긴 텍스트 열의 속성을 "value ordering"으로 설정합니다.
Names default to here(1);
dt=New Table( "order by another col",
Add Rows( 4 ),
New Column( "Label",
Character,
"Nominal",
Set Values( {"YRFCA1", "YRTCB1", "YRACB2", "YRTCC0", "YAAAA4"} )
),
New Column( "Last 3",
Character,
"Nominal",
Formula( Right( :Label, 3 ) ),
),
);
dt << sort(replace table(1), by(:Last 3));
values=dt:Label << get values;
dt:Label << set property ("Value Ordering", values);
Re: 값의 마지막 3자를 기준으로 한 주문 수준멋진!
Re: 값의 마지막 3자를 기준으로 한 주문 수준두 가지 방법 모두 매우 유용합니다. Craige와 ZF에게 감사드립니다!