有關向具有規格限制的表中的所有列添加規格限制線的一些快速說明
當在色譜柱的屬性中定義規格限時,將規格限繪製為該色譜柱圖表上的參考線通常會很方便。 我在“規格限值”的列屬性中,有一個複選框,只要在圖形上使用該列,就會使用該列的規格。 人們可能想檢查一整堆有規格的柱子上的那個小方框。 手動執行此操作會很乏味,因此這裡有一些 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