按公式為儲存格著色
我有一個寬格式的資料表。它有規格限制。透過執行品質和流程 -> 管理限制 -> 顏色超出規格值,它可以正常工作。使用此方法時失敗值是顏色。我想以高格式查看它。請參閱下面的轉置表。
資料表被轉置,然後用限制(帶有 LSL 和 USL 的列名)進行更新。 Label是參數,1到20是針對不同的部分。
如果零件的讀數 < LSL 或讀數 > USL,我想對單元格或值進行著色。我可以用 cols -> 公式來完成還是需要 JSL?
這是 JMP 17。

內容組織數據探索和視覺化回覆:透過公式為儲存格著色當您在行級別執行檢查並且顏色通常在列級別設定時,我認為您將需要利用 JSL。其 JSL 並不太難,如果您可以提供範例數據,JMP 社群很可能可以幫助您建立它。
建置腳本的一種方法是:
- 將測量列放入清單/關聯數組中(標籤/LSL 之間的連續列或名稱中僅包含數字的列)
- 使用 For Each Row 迴圈遍歷表格
- 將步驟中建立的物件更新為每列應著色的行時,將行上的值與限制進行比較
- 完成行循環後,循環遍歷步驟 1 中建立的物件並使用 << Color Cells 設定顏色
回覆:透過公式為儲存格著色這是範例資料。
“標籤”列是參數。每個標籤都有獨特的 LSL 和 USL。
列標題中的 1 到 20 是不同的部分。每個部件的每個參數都有唯一的值。
例如,如果第 3 行第“1”列的讀數為“0.37209999561”,超出了 (0.070000000298, 1) 的 LSL 和 USL,則“0.37209999561”字體顏色將變更為紅色。
回覆:透過公式為儲存格著色這不是最簡單的方法,但可能對您有用。請注意,如果您有單方面的規格限制,您可能需要添加額外的檢查
Names Default To Here(1);
dt = Open("$DOWNLOADS/Transpose of u4_trimmed.jmp");
cols = dt << Get Column Names("String");
labelidx = Contains(cols, "Label");
partcols = Remove From(cols, labelidx + 1, Contains(cols, "LSL") - labelidx - 1);
m = J(N Rows(dt), N Items(partcols), 0);
For Each Row(dt,
m[Row(), 0] = dt[Row(), partcols] < :LSL | dt[Row(), partcols] > :USL
);
For Each({partcol, idx}, partcols,
color_rows = Loc(m[0, idx]);
If(N Items(color_rows) > 0,
Column(dt, partcol) << Color Cells("Red", color_rows);
);
);回覆:透過公式為儲存格著色有用。抱歉回覆晚了。我試圖弄清楚劇本,但這似乎需要更多時間。
回覆:透過公式為儲存格著色非常感謝您提供的解決方案。