目標:使用BY變量作為外部循環來編寫三個Y的雙變量圖。
交互式很簡單:按Y調整Y.選擇三個Y列,選擇X.選擇BY變量,在我的例子中為“Species”。
對於每個BY值,將得到的雙變量圖與Y(1),Y(2),Y(3)按X圖一起分組。
腳本:我只發現在每個平台調用中插入BY。我的嘗試是:
Bivariate( Y( :Name( “Y(1)” ) ), X( :X ), By( :Species) ),
Bivariate( Y( :Name( “Y(2)” ) ), X( :X ), By( :Species) ),
Bivariate( Y( :Name( “Y(3)” ) ), X( :X ), By( :Species) ),
<<{Arrange in Rows( 1 )}
但是對於物種的所有值,分組現在是Y(1)vs X,然後對於所有物種值等,Y(2)等。
如何將BY變量作為外部循環?從交互式版本創建的腳本不是通用的,即代替BY變量,它顯式使用WHERE(:Species ==“rat”)等。BY變量的選項隨每個數據集而變化,因此無法使用WHERE顯式聲明。
謝謝你的解決方案。我避免嘗試FOR循環,因為交互式執行此操作的幾個步驟非常誘人,我確信使用BY的同樣簡單的腳本。 您的方法肯定會起作用,並且使用自定義組標題將允許我一步將所有最終圖形複製/粘貼到我的文檔中,而無需手動格式化/調整每個圖形的大小。
有多種方法可以完成您的任務,使用By(),自上而下,並使用Where(),自下而上。
我認為使用Where()提供更多靈活性可以自下而上構建多變量報告。 下面是為其編寫的示例腳本 JSL Companion,JMP腳本語言的應用,第2版 ,第8章,“自定義顯示”。
在這個例子中,它使用了2個不同的平台(Bivariate和Overlay);您將按組使用3個雙變量圖。而不是物種,它使用國家。
無論是一個州還是52個(包括哥倫比亞特區),這個例子都適用於任何州的子集。
希望這可以幫助。
這是一個“自下而上”構建顯示的簡單示例。這個例子創建了一個
自定義標題並刪除“where”文本框。然後附加一個包含的OutlineBox
一個分析,就是plt1的HListBox,雙變量分析和plt2。
請注意,由於這些圖是單個報告,因此只有單個分析導航
需要。它們位於一個未顯示的VListBox中,並且自從它處於活動狀態
最終附加是第一次將兩個圖加載到窗口中。