你好,
我是 JSL 的新手。 我正在使用 JMP 中的圖形構建器函數繪製數值與分類數據的圖形,並添加橢圓以查看相關性。 我正在為未來的繪圖使用腳本,但我想通過將相關性(圖中用紅色箭頭指向)值存儲在變量中的某個位置來進行一些自定義,以便我可以在某些邏輯操作中使用它。例如,如果我只想繪製相關性超過 0.45 的圖形。 任何 JSL 腳本、幫助或線索將不勝感激。 接下來我嘗試了一些但還沒有成功。
謝謝!
gb = dt << Graph Builder(
Variables( X( :"A_column"n ), Y( :"B_column"n ) ),
Elements(
Points( X, Y, Legend( 3 ) ),
Ellipse( X, Y, Legend( 4 ), Correlation( 1 ), Mean Point( 1 ) )
),
SendToReport(
Dispatch( {"Ellipse"}, "", OutlineBox, {Close( 0 )} ),
Dispatch( {"Pairwise Correlations"}, "", TableBox, {Sort By Column( 7, 1 )} )
)
);
thing_report = gb << report;
Show Properties( thing_report );
corr = biv << Get Correlation Matrix;
Show( corr );

存儲用紅色箭頭指向的相關性。
我不確定您是否應該檢查 Continuous 和 Nominal 列之間的相關性,但是......您可以使用類似這樣的東西從圖形生成器中導出相關性(不確定這將如何容易破壞):
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(535, 457),
Show Control Panel(0),
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y, Legend(3)), Ellipse(X, Y, Legend(5), Correlation(1)))
);
ts = Report(gb)[Frame Box(1)] << Find Seg("TextSeg");
corr = ts << get text;
我是如何到達那裡的:
1. 創建圖表生成器並打開自定義菜單。 注意到我可以更改文本元素的顏色,所以我做了

2. 為我的圖形生成器獲取了帶有紅色文本的腳本,發現顏色變化會影響 TextSeg()
Graph Builder(
Size(617, 457),
Show Control Panel(0),
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y, Legend(3)), Ellipse(X, Y, Legend(5), Correlation(1))),
SendToReport(
Dispatch(
{},
"Graph Builder",
FrameBox,
{DispatchSeg(TextSeg(1), {Fill Color("Medium Dark Red")})}
)
)
)
3. 檢查了 Text Seg 的 Scripting Index 並找到了一種獲取值的方法

嗨哈德利邁爾斯,
非常感謝您的解決方案。 在我的數據中,一列是數字,另一列是分類(主要是字符)。 我不確定如何對這種類型的數據使用多變量。 這就是我使用圖形生成器和密度橢圓圖來查看那裡的相關性的原因。 不幸的是,您提供的解決方案不適用於我的數據。 希望得到您的回應。
再次感謝你!
你好,
我不確定是否有辦法從 Graph Builder 報告中提取此數字,但使用 Multivariate 非常簡單(請參見下面的腳本)。這對你有用嗎?
Names Default To Here(1);
dt=open("$SAMPLE_DATA/Tablet Production.jmp");
mul=dt<<MULTIVARIATE></MULTIVARIATE>