大家好,
我想在圖形生成器中顯示橢圓元素,但我只想顯示輪廓顏色,而不是完整的橢圓。
我找到了使用“自定義”菜單並修改“線條顏色”屬性的解決方案。 但是,如果有多個組(使用疊加放置區域),則意味著每個橢圓都需要一一修改。
有沒有更快的方法來做到這一點? 如果可以不使用 JSL?
以下是使用 Big Class 數據表的示例:


預先感謝您的投入!
謝謝@菲爾_凱使用 Fit Y by X 平台解決方法。 我想我會聽從您的建議並將一個項目添加到願望清單中!
謝謝@jthi對於劇本來說,有它也很好!
這是一個非常混亂的腳本示例,其中包含 Find Segs、Legend Server 和 Legend Display...
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:weight), Y(:height), Overlay(:sex)),
Elements(Points(X, Y, Legend(9)), Ellipse(X, Y, Legend(11)))
);
lgnd = gb << Get Legend Display;
server = gb << Get Legend Server;
items = lgnd << Get Items;
// get bars
legend_items1 = {};
legend_items2 = {};
For Each({item}, items,
If(item << get type == "Bar",
Insert Into(legend_items1, Num(Word(2, Word(1, Char(item), ","))));
Insert Into(legend_items2, Num(Word(2, Char(item), ",")));
//item << Set Visible(0);
);
);
fill_colors = {};
For Each({{item1, item2}, idx}, Across(legend_items1, legend_items2),
Eval(EvalExpr(item = server << Get Legend Item(Expr(item1), Expr(item2))));
Insert Into(fill_colors, Eval List({item << Get Fill Color}));
item << Set Properties(
{Transparency(1)}
);
);
fb = Report(gb)[Frame Box(1)];
segs = fb << Find Segs;
polysegs = Filter Each({seg}, segs, (seg << class name) == "PolySeg");
poly_i = 0;
For Each({item, idx}, polysegs,
polysegs[idx] << Line Color(fill_colors[idx]);
polysegs[idx] << Line Width(2);
polysegs[idx] << Fill Pattern("None");
);
Write();我看不到在圖形生成器中執行此操作的無代碼方法。 這可能是一個很好的建議JMP 願望清單。
不過,您可以在 Fit Y by X 中更輕鬆地實現這一點。 您需要從紅色小三角菜單中選擇分組依據...以指定分組變量。 然後選擇密度橢圓。 然後右鍵單擊該圖並選擇行圖例以按分組變量著色。
