因果圖顏色是否可以將顏色信息嵌入到因果圖的表格中?如果不是,這可能是一個功能請求嗎?
這對於跟踪根本原因調查的進展非常有用。當存在多個具有相同名稱的文本編輯框(例如:溫度、設置)時特別有用。
我使用的是JMP14.3.0
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Ishikawa.jmp" );
dt << Diagram(
Y( :Child ),
X( :Parent ),
SendToReport(
Dispatch( {}, "Solder process", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Splatter", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Flux", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Chain speed", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Temperature", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Setup", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Control", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Wave pump", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Height", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Flow", TextEditBox, {Font Color( 5 )} ),
Dispatch( {}, "Raw card", TextEditBox, {Font Color( 3 )} ),
Dispatch( {}, "Short circuit", TextEditBox, {Font Color( 3 )} ),
Dispatch( {}, "Shroud", TextEditBox, {Font Color( 3 )} ),
Dispatch( {}, "Moisture context", TextEditBox, {Font Color( 3 )} ),
Dispatch( {}, "Time", TextEditBox, {Font Color( 3 )} ),
Dispatch( {}, "Temperature", Text Edit Box( 2 ), {Font Color( 3 )} ),
Dispatch( {}, "Components", TextEditBox, {Font Color( 0 )} ),
Dispatch( {}, "Missing from reel", TextEditBox, {Font Color( 0 )} ),
Dispatch( {}, "Vendor", TextEditBox, {Font Color( 0 )} ),
Dispatch( {}, "Setup", Text Edit Box( 2 ), {Font Color( 0 )} ),
Dispatch( {}, "Wrong part", TextEditBox, {Font Color( 0 )} ),
Dispatch( {}, "Functional failure", TextEditBox, {Font Color( 0 )} )
)
);大規模定制回复:因果圖顏色@機器人我沒有意識到你可以從 HierBox(1) 製作數據表。 這樣就可以了!!
回复:因果圖顏色我剛剛看到這篇文章,並且剛剛提交到 JMP 願望清單,根據我在 2020 年 JMP 探索峰會上的主題添加其他功能,使 JMP 因果關係更像思維導圖。
您可以查看我在 2020 年 JMP Discovery 峰會上的演講:使用 JMP 因果圖、思維導圖軟件和 JSL 結構化問題解決 (2020-US-30MP-569)
我能夠製作一個交互式浮動窗口,允許用戶通過向文本編輯框發送消息來在標籤列中添加“E”、“C”、“N”,並且它為每個字母提供不同的字體顏色。 如果缺少,該腳本還會創建“標籤”列。
我正在嘗試對您為任何初始文本著色的問題做同樣的事情,但是在向子父級發送消息時遇到一些問題,它想要為其下面的所有文本著色。 但這篇文章是一個有趣的概念,我們的 JMP 用戶採用相同的因果圖,並使用右鍵單擊每個文本編輯框的內置功能,為每個問題手動對不同文本進行顏色編碼。 交互式浮動窗口概念很好,因為您可以在團隊集思廣益時著色或返回原始顏色。
我會將您的建議添加到因果圖的同一願望清單中,也許開發人員會在未來的版本中對此進行研究,並添加為第四列選項。 以下是 JMP 願望清單下的帖子:魚骨圖/因果圖:增強當前平台以啟用思維導圖
回复:因果圖顏色謝謝@andreacoombs1 。你的腳本確實做到了大部分。我認為這個腳本可以完成剩下的工作。我尚未測試穩健性,但似乎工作正常。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Ishikawa.jmp" );
// Add color column.
dt << New Column( "Color",
Numeric,
"Continuous",
Format( "Best", 12 ),
Value Labels( {3 = "Red", 5 = "Blue"} ),
Use Value Labels( 1 ),
Set Values( [., 5, 3, ., ., ., ., ., 5, 5, 5, 5, 5, 5, 5, 5, 5, 3, 3, 3, 3, 3, ., ., ., ., ., ., ., ., ., ., .] )
);
// Create diagram.
dgram = dt << Diagram( Y( :Child ), X( :Parent ) );
// Get diagram order.
dgramRep = dgram << Report;
dgramRep[Hier Box( 1 )] << Make Into Data Table();
orderDt = Current Data Table();
orderDt << Set Name( "Row Order" );
orderDt << New Column( "Row Order", Numeric, Continuous, Values( Index( 1, N Rows( orderDt ) ) ) );
// Update dt with row order.
dt << Update( With( orderDt ), By Matching Columns( :Parent == :Parent, :Child == :Child ) );
Close( orderDt, No Save );
// Set colors.
orderList = As List( dt:Row Order << Get Values() );
colorList = As List( dt:Color << Get Values() );
For( i = 1, i <= N Rows( dt ), i++,
c = colorList[Loc( orderList, i )][1];
If( !Is Missing( c ),
dgramRep[Text Edit Box( i + 1 )] << Font Color( c )
);
);回复:因果圖顏色該腳本可以幫助您完成大部分工作。我必須更多地考慮如何提取相應的父項,但以下是如何獲取子項和行順序的方法。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Ishikawa.jmp" );
fb1 = dt << Diagram(
Y( :Child ),
X( :Parent ))
;
fb1rep = fb1<<REPORT></REPORT>
回复:因果圖顏色謝謝@andreacoombs1 。您知道自動執行 dt:Row Order 列中的值的方法嗎?
回复:因果圖顏色可以使用腳本設置數據表來為魚骨著色。以下是三個關鍵步驟以及有關正在發生的事情的一些註釋。
1、數據表必須按照魚骨創建的順序排序。父行是前一行中的子行的任何行都必須位於後續行中。 Ishikawa.jmp 數據集不按此順序排列。下面的腳本將創建一個名為“Ishikawa Sorted”的新數據表。例如,請注意,在焊接工藝中,有一個名為“溫度”的子項,它是其他行中的父項。焊接工藝、溫度位於第 9 行,溫度、設置緊隨其後位於第 10 行。
2. 添加一個名為“顏色”的列,其中包含標準 JMP 顏色。出於演示目的,下面的腳本添加了此列,並為此顏色添加了“行狀態”列,並對數據表進行了著色,以使配色方案變得明顯。我已將 5 個潛在根本原因類別分開著色。 我還將其中一些著色為灰色,例如,當您得出有關潛在根本原因的結論時,您可以這樣做。
3. 最後一步是運行腳本,1) 創建魚骨圖,2) 從數據表中提取顏色,3) 為魚骨中的文本著色。包含這三個步驟的腳本可以保存到您的數據表中。魚骨圖中的文本字符串存儲在文本編輯框中。第一個文本編輯框對應於數據表中的第一或最高順序父級,在本例中為“電路板缺陷”。這就是為什麼 For 循環包含 i+1 表示文本編輯框和 i 表示相應的顏色。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Ishikawa.jmp" );
//Reorder by defect groups
dt << New Column("Row Order", set values (
{1,5,15,21,27,2,3,4,6,7,8,9,12,10,11,13,14,16,17,
18,19,20,22,25,26,23,24,28,29,30,31,32,33})
);
ndt = Data Table( "Ishikawa" ) << Sort(
By( :Row Order ),
Order( Ascending ),
Output Table( "Ishikawa Sorted" )
);
//Add column for color, color rows by color
ndt << New Column ("Color", set values(
{4,4,4,1,5,5,5,5,1,1,1,5,5,5,3,
3,3,3,3,3,8,8,8,8,8,8,6,6,6,6,6,1,6})
);
ndt << New column ("Color State", "Row State", Formula(Color State( :Color )));
Column(ndt,"Color State")<<COPY to="" row="" states=""></COPY>
回复:因果圖顏色我很確定我看到了@andreacoombs1設置一個表格模板以與為魚骨分支著色的腳本一起使用。 不幸的是,我沒有那個腳本。