我不知道該怎麼稱呼它。也許表變數可以做到這一點。 也許預測分析器可以。
最後,我想要一個公式列 ABC 類,它是至少兩個我稱之為「全域參數」的結果。基本 ABC SKU 分類將截止值設定為所有 SKU 設定收入 %s 的總和。As 應為收入的 80%,Bs 為 15%,Cs 為 5%。對於此範例,我將使其變得更簡單,假設 SKU 根據該 SKU 的銷售額被分類為 A、B 或 C。
在下面的範例中,有三個規則(我沒有將其編碼為公式),由兩個參數設定。
- 銷售超過1000的SKU -> A
- 銷售超過100的SKU -> B
- 其餘->C
數據表示例
//create datatable
dt = New Table( "Slider Test",
Add Rows( 26 ),
Set Header Height( 47 ),
New Column( "SKU",
Character,
"Nominal",
Set Selected,
Set Values(
{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
"O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"}
)
),
New Column( "Sales",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values(
[98, 64, 120, 397, 93, 58, 196, 700, 674, 229, 607, 55, 590, 169, 1449,
1236, 143, 1714, 364, 404, 226, 1300, 1105, 144, 1391, 1893]
),
Set Display Width( 94 )
),
New Column( "ABC Class",
Character,
"Nominal",
Set Values(
{"C", "C", "B", "B", "C", "C", "B", "B", "B", "B", "B", "C", "B", "B",
"A", "A", "B", "A", "B", "B", "B", "A", "A", "B", "A", "A"}
),
Set Display Width( 70 )
)
);
//create graph
dt <<GRAPH builder=""></GRAPH>範例圖像。如果我可以輸入顯示的兩個變數或有一個滑桿,那就太好了。
在下面的範例中,有三個規則(我沒有將其編碼為公式),由兩個參數(截止 AB 和截止 BC)設定。
- 銷售額超過 1000 的 SKU -> A 然後我將結果改為 1500
- 銷售額超過 100 的 SKU -> B 然後我顯示將其更改為 150 的結果
- 其餘->C

謝謝。
這個例子給了我很大的幫助。在您的幫助下,我完全實現了我的想像。 謝謝。
這就是我為了獲得多個滑桿並將全域框置於滑桿右側而完成的操作。
//graph builder code above here (not shown)
//code for slider below
//number of months of demand variables
ab = dt:Cutoff AB;
bc = dt:Cutoff BC;
//CoV variables
CoV1 = dt:CoV1;
CoV2 = dt:CoV2;
:ABC Class << Suppress Eval( 0 );
specBox = H List Box(
V List Box(
//number of months of demand
H List Box(
Slider Box(
0,
12,
ab,
dt:Cutoff AB = ab;
dt << rerun formulas;
),
Text Box( "Months of demand" )
),
H List Box(
Slider Box(
0,
12,
bc,
dt:Cutoff BC = bc;
dt << rerun formulas;
),
Text Box( "Months of demand" )
),
//CoV
H List Box(
Slider Box(
0,
4,
CoV1,
dt:CoV1 = CoV1;
dt << rerun formulas;
),
Text Box( "COV" )
),
H List Box(
Slider Box(
0,
4,
CoV2,
dt:CoV2 = CoV2;
dt << rerun formulas;
),
Text Box( "COV" )
),
),//end V list box 1
//display the variables
V List Box(
Global Box( ab ),
Global Box( bc ),
Global Box( CoV1 ),
Global Box( CoV2 )
)//end V list box2
);//end H list box
(Report( gb )[Picture Box( 1 )] << Parent) << Append( specBox );

@BSwid ,使用 GraphBuilder 的圖形很複雜,因為有很多動態元件,什麼是最好的方法取決於使用情況。例如,如果其他人要使用此圖表,他們可以將銷售的 GraphBuider 摘要統計量變更為最大值或最小值或標準差,而不是平均值。換句話說,維護 GraphBuilder 的功能會增加複雜度。
如果此總計統計資料不是動態的,則可以透過在 GB 的框架盒中新增自訂函數來實現。 這需要計算每個截止值變化的平均值。並重新繪製圖表。 但是,如果排除了行,您將需要編寫一個行狀態處理程序腳本,以便計算您的特殊條形。 另外,可以為 X-Group 等選擇另一列,那麼動態滑桿介面可能會出現問題。
使用 JMP 平台時,我更喜歡使用 JMP 的功能,即使需要重組表才能執行此操作。為了讓GB繪製這些嵌套的條形圖,需要有一個變數來指定當前的條形圖,然後指定推測的條形圖,這些條形圖將用作疊加,並且這些條形圖可以並排或嵌套。 從你的繪圖中,我選擇了嵌套,但是使用這個腳本你可以改變它,
要重構數據,您需要 2 個副本:原始值和推測值。 我選擇的方法是將表與其自身連接起來。 該腳本有一個假設,即當前分類來自腳本,如果不是,則需要修改定義的公式,並且可能需要新列。

附3個文件:
- 原表, SKU 範例.jmp
- 修改表SKU 範例_Final.jmp注意:建立互動式 GB 的腳本附在該表中
- 腳本, SKU 腳本.jsl從 c:\temp 開啟原始表。您將需要修改您的路徑。此腳本重構表格並繪製動態圖。
注意:建立一個動態自訂圖表可能會更容易,它具有固定的摘要統計數據,並且不需要維護其他花哨的東西。 此方法用於記錄使用 GraphBuilder 編寫自訂動態小工具腳本的問題。
祝你好運。
@BSwid寫道:
我不知道該怎麼稱呼它。也許表變數可以做到這一點。 也許預測分析器可以。
最後,我想要一個公式列 ABC 類,它是至少兩個我稱之為「全域參數」的結果。基本 ABC SKU 分類將截止值設定為所有 SKU 設定收入 %s 的總和。As 應為收入的 80%,Bs 為 15%,Cs 為 5%。對於此範例,我將使其變得更簡單,假設 SKU 根據該 SKU 的銷售額被分類為 A、B 或 C。
在下面的範例中,有三個規則(我沒有將其編碼為公式),由兩個參數設定。
- 銷售超過1000的SKU -> A
- 銷售超過100的SKU -> B
- 其餘->C
數據表示例
//create datatable
dt = New Table( "Slider Test",
Add Rows( 26 ),
Set Header Height( 47 ),
New Column( "SKU",
Character,
"Nominal",
Set Selected,
Set Values(
{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
"O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"}
)
),
New Column( "Sales",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values(
[98, 64, 120, 397, 93, 58, 196, 700, 674, 229, 607, 55, 590, 169, 1449,
1236, 143, 1714, 364, 404, 226, 1300, 1105, 144, 1391, 1893]
),
Set Display Width( 94 )
),
New Column( "ABC Class",
Character,
"Nominal",
Set Values(
{"C", "C", "B", "B", "C", "C", "B", "B", "B", "B", "B", "C", "B", "B",
"A", "A", "B", "A", "B", "B", "B", "A", "A", "B", "A", "A"}
),
Set Display Width( 70 )
)
);
//create graph
dt <<GRAPH builder=""></GRAPH>範例圖像。如果我可以輸入顯示的兩個變數或有一個滑桿,那就太好了。
在下面的範例中,有三個規則(我沒有將其編碼為公式),由兩個參數(截止 AB 和截止 BC)設定。
- 銷售額超過 1000 的 SKU -> A 然後我將結果改為 1500
- 銷售額超過 100 的 SKU -> B 然後我顯示將其更改為 150 的結果
- 其餘->C

謝謝。
我嘗試設定表變數:AB 和:BC。然後嘗試修改雞蛋和培根的例子來自 jsl 食譜。
但是當我嘗試移動滑塊時出現錯誤。

//use table variables instead :AB & :BC
//Eggs = 50; // :AB
//Bacon = 50; // :BC
//window
New Window( "Slider Display",
Border Box( Left( 10 ), Right( 10 ), top( 10 ), bottom( 10 ),
V List Box(
H List Box(
Text Box( "AB" ), // slider label
ABsb = Slider Box( 0, 2000, :AB, // slider script follows...
ABnb << set( :AB ); // update the value
// this example doesn't need any other interactive
// update. You could do some other work here, using
// the slider's value to change a graph, perhaps.
),
// text box to hold the slider's value...
ABnb = Number Edit Box( :AB, <<SETFUNCTION></SETFUNCTION>(我認為)我希望滑桿框更新表變量,這會更新資料表中的公式,從而更新圖表。
我確定我需要這條線。
gb<<INVAL></INVAL>
我嘗試設定表變數:AB 和:BC。然後嘗試修改雞蛋和培根的例子來自 jsl 食譜。
但是當我嘗試移動滑塊時出現錯誤。

//use table variables instead :AB & :BC
//Eggs = 50; // :AB
//Bacon = 50; // :BC
//window
New Window( "Slider Display",
Border Box( Left( 10 ), Right( 10 ), top( 10 ), bottom( 10 ),
V List Box(
H List Box(
Text Box( "AB" ), // slider label
ABsb = Slider Box( 0, 2000, :AB, // slider script follows...
ABnb << set( :AB ); // update the value
// this example doesn't need any other interactive
// update. You could do some other work here, using
// the slider's value to change a graph, perhaps.
),
// text box to hold the slider's value...
ABnb = Number Edit Box( :AB, <<SETFUNCTION></SETFUNCTION>(我認為)我希望滑桿框更新表變量,這會更新資料表中的公式,從而更新圖表。
我確定我需要這條線。
gb<<INVAL></INVAL>