我的計算機上有多個版本的JMPPro,包括JMP 14.3和JMP 16.0。 我沒有任何版本的選項可在報告窗口中自定義格式。 例如,假設我使用帶有“ by”列的雙變量(Y乘X擬合)平台,並且“ by”列中有80個唯一值。 在單列或單行中包含所有圖將減慢對圖的查看。 進行拖放將是乏味的。 我想做的是:
-在報告輸出中指定行數和每行的圖數
-如果有兩個“ by”列,則可以選擇將第一個“ by”列中的所有圖放在報告輸出的給定行中。 例如,假設有兩個“ by”列,創建5個唯一的組合:A列的值為{tea,coffee}和B列的值為{milk,honey,sugar}。 數據表中的任何地方都沒有出現咖啡和蜂蜜的混合物。 報告輸出的第一行將包含3個“茶”圖,每個圖分別代表牛奶,蜂蜜和糖。 報告輸出中的第二行將包含2個用於“咖啡”的圖,每個對應於牛奶和糖。
我的問題是:
-是否可以在JMP中本地執行此操作?
-如果沒有,是否有任何腳本/加載項可用於以這種方式格式化報告窗口?
我想我可以自己編寫腳本,但這會很耗時,並且希望有一個簡單的按鈕。=)
我沒有想到本機的方法(但是可能仍然有一些方法),因此這裡有一些腳本想法可以幫助您入門:
要僅控制每行中有多少個報告,您應該可以僅使用帶有N Col的Lineup Box:
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Food Journal.jmp");
maxValsPerRow = 4;
nw = New window("", Lineup Box(N Col(maxValsPerRow),
Bivariate(Y(:Calories), X(:Fat), By(:Food Category, :Meal))
));
對於兩個“ by”列,當By更改時要分成新的行(請注意Eval(EvalExpr()),用法):
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Food Journal.jmp");
uniqVals = Associative Array(Column(dt, "Meal")) << get keys;
maxValsPerRow = 15;
nw = New window("", vlb = V List box());
For(i = 1, i <= N Items(uniqVals), i++,
vlb << Append(Eval(EvalExpr(
Lineup Box(N Col(Expr(maxValsPerRow)),
Bivariate(Y(:Calories), X(:Fat), By(:Food Category, :Meal), Where(:Meal == Expr(uniqVals[i])))
)
))
));