有关向具有规格限制的表中的所有列添加规格限制线的一些快速说明
当在色谱柱的属性中定义规格限时,将规格限绘制为该色谱柱图表上的参考线通常会很方便。 我在“规格限值”的列属性中,有一个复选框,只要在图形上使用该列,就会使用该列的规格。 人们可能想检查一整堆有规格的柱子上的那个小方框。 手动执行此操作会很乏味,因此这里有一些 JSL 来完成此任务。
该脚本收集连续列的列表。 (字符和名义列无论如何都没有规格。)
该脚本从列表中的每个列中获取规格限制列属性。 函数“获取列属性”获取所有属性,但这不是我们想要的,因此我们只提取规格限制属性。 如果没有 Spec Limit 属性,则返回 Empty()。
接下来,脚本将 y(这是一个包含“show Limits(1)”的未计算表达式)插入到来自 Spec Limits 属性的列表中。
最后,脚本将新的规格限制属性设置回其开头的列...除非规格限制属性是表达式而不是列表。
列属性类型有问题吗?
设置列属性有两种方法
1. 作为表达式:
坳<<设置属性( “规格限制” ,规格限制( LSL ( 10 ) ,超级激光实验室( 50 ) ,目标( 30 ) ) ) ;
2 作为列表:
列<<设置属性( “规格限制” , { LSL ( 10 ) ,超级激光实验室( 50 ) ,目标( 30 )} ) ;
一些解释:脚本的这一部分......
如果(头名表达式( A ) == “规格限制” ,
恩=纳尔格( A ) ;
啊= {} ;
为了(二、 = 1 ,二、 <=恩,二、 ++,插入(啊,精氨酸( A ,二、 ))) ;展示(啊) ;
碰撞[我] <<删除属性( “规格限制” ) ;
碰撞[我] <<设置属性( “规格限制” ,评估(啊))
...检查规范属性是否为表达式类型。 然后将参数的组成部分插入到列表中。 后删除现有属性,新的列表类型属性将被添加回来。
//////////////////这是标准化规范列属性类型的脚本/////////////////////// //////
dt =当前数据表() ;
碰撞= dt <<获取列名(连续的) ;
为了(我= 1 ,我<=尼特姆斯(碰撞) ,我++,
A =碰撞[我] <<获得财产( “规格限制” ) ;
y =表达式(显示限制( 1 )) ;
插入( A ,名称表达式( y )) ;
展示( A ) ;
如果(头名表达式( A ) == “规格限制” ,
恩=纳尔格( A ) ;
啊= {} ;
为了(二、 = 1 ,二、 <=恩,二、 ++,插入(啊,精氨酸( A ,二、 ))) ;展示(啊) ;
碰撞[我] <<删除属性( “规格限制” ) ;
碰撞[我] <<设置属性( “规格限制” ,评估(啊)) ,
碰撞[我] <<设置属性( “规格限制” ,评估( A ))
)) ;
供测试用:这是一个简化的测试用例,用作示例(运行 JMP 12.2) JSL 的这部分使用两种不同类型的规范属性格式创建了一个新表。
dt =新表( “目标” ,添加行( 1 ),新专栏( “ab” ,数字, “连续的” ,格式( “最好的” , 12 ) ,设定值( [ 1 ] ) ) ,
新专栏( “b 减 a” ,数字, “连续的” ,格式( “最好的” , 12 ) ,设置选定,设定值( [ 3 ] ) ) ) ;
//添加两种格式的规格限
:柱子( 1 ) <<设置属性( “规格限制” ,规格限制( LSL ( 10 ) ,超级激光实验室( 50 ) ,目标( 30 ) ) ) ;
:柱子( 2 ) <<设置属性( “规格限制” , { LSL ( 1 ) ,超级激光实验室( 5 ) ,目标( 3 )} ) ;
啊=:柱子( 1 ) <<获得财产( “规格限制” ) ;展示(啊) ;
BB =:柱子( 2 ) <<获得财产( “规格限制” ) ;展示( BB ) ;
在这些链接中,有更多可能有用的评论和问题:
尝试从列中提取规格限制
显示为图形参考线
http://www.jmp.com/support/notes/46/953.html