基于值的最后 3 个字符的订单级别你好 -
我希望图中 x 轴上的值按升序排列。 问题是这些值是字母数字字符串,只有最后 3 个字符是指示顺序的字符。
例如,我想在绘图中按从左到右的顺序查看这些。
1:YRFCA1
2:YRTCB1
3:YRACB2
4:YRTCC0
行和值顺序级别以不同的方式排列数据。
我可以做上面的值的子字符串,并在排序之前只关注最后 3 个字符,但我不确定如何在图中显示整个 6 个字符的字符串。
感谢有关我如何在 JSL 中实现这一点的意见。
谢谢!
脚本编写回复:基于值的最后 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 ) ) )
);
最后三个字母移到名字前面
回复:基于值的最后 3 个字符的订单级别我按最后 3 个字符对表格进行排序(首先获取最后 3 个字符的子字符串),然后设置长文本列“值排序”的属性。
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);
回复:基于值的最后 3 个字符的订单级别好的!
回复:基于值的最后 3 个字符的订单级别这两种方式都非常有帮助。 感谢克雷格和采埃孚!