建立 DoE 時,每個欄位通常是 2 或 3 個不同值(高值和低值,有時還有中心值)的混合。 為了更好地向我和我的同事說明 DoE 設置,我手動為每列中的單元格著色。 高值以紅色表示,中心值以綠色表示,低值以藍色表示。 自動化這個著色過程將是有益的。 我希望能夠運行一個腳本,根據上面的描述為選定列中的單元格著色。理想情況下,腳本應該能夠同時對多個選定的列執行此程序。 關於這樣的腳本是什麼樣子有什麼建議嗎?

@Steffen_Bugge當然,我想說的是,如果您想到新的想法,建議將其寫入願望清單
謝謝!
一個完美的解決方案,直接起作用!
這實際上應該是 JMP 中 DOE 平台的一部分。 我可以將其添加到願望清單嗎@jthi ?
以下是腳本範例(由於 Transform Each() 和 For Each() 需要 JMP16)
Names Default To Here(1);
If(Is Empty(Current Data Table()),
Throw("No tables open.");
, // else
dt = Current Data Table();
);
sel_cols = dt << Get Selected Columns();
If(N Items(sel_cols) == 0,
Throw("No columns selected");
);
// color "globals", fairly free to choose which type of "JMP Color" to use
LOW_COLOR = 67;
MIDDLE_COLOR = -13948116;
HIGH_COLOR = "Light Green";
For Each({col_ref}, sel_cols,
col_name = col_ref << get name; // I don't like using :COLNAME format at all
// get values in column
// Associative Array seems to have a bug so we use Summarize
Summarize(dt, val_strs = By(Column(col_name)));
// Summarize returns list of characters, so we will convert them to numbers
vals = Transform Each({val}, val_strs, Num(val));
min_val = Remove From(vals, 1)[1];
max_val = Remove From(vals, -1)[1];
// This method should be fairly robust, but it does looks complicated
weird_jmp_list = {};
Eval(Substitute(Expr(
Insert Into(weird_jmp_list, Expr(_value_ = _color_))
),
Expr(_value_), min_val,
Expr(_color_), LOW_COLOR
));
Eval(Substitute(Expr(
Insert Into(weird_jmp_list, Expr(_value_ = _color_))
),
Expr(_value_), max_val,
Expr(_color_), HIGH_COLOR
));
// color rest with middle color
For Each({val}, vals,
Eval(Substitute(Expr(
Insert Into(weird_jmp_list, Expr(_value_ = _color_))
),
Expr(_value_), val,
Expr(_color_), MIDDLE_COLOR
));
);
Column(dt, col_name) << set property( "Value Colors", weird_jmp_list) << Color Cell By Value(1);
);

謝謝@jthi ,
在大多數情況下,只有兩個值:最大值和最小值。 如果是中心值,則為最小值和最大值之間的算術平均值。這即使沒有腳本,「值顏色」列屬性絕對是正確的工具。 當同時在多個列上使用時,它肯定會簡化過程!
你如何定義低、高(有時是中間)? 總是最多只有三個值嗎? 做出決定後,使用“值顏色”列屬性和此處提到的方法編寫腳本應該相當簡單使用 Eval Insert、Eval Expr、Parse 和 Substitute 將一個表達式插入另一個表達式基於 JMP 提供的程式碼(使用 << 取得選定的列和循環)
Data Table("Untitled 10"):Column 1 << Set Property(
"Value Colors",
{1 = -15113984, 2 = -5682409}
);