如何讓圖形產生器根據資料為 Y 變數分配變數比例大家好,
我一直在社區討論中搜尋這個主題,但到目前為止我還沒有運氣。
如何讓圖形產生器根據資料範圍為 Y 變數分配變數比例?
使用 BigClass 資料範例 如果我要繪製多個圖表,我將使用以下腳本:
dt= Open ("Big Class.JMP");
win = New window("Graphs", lub = Lineup Box (Ncol(2)));
Sexs = (Associative Array(Column (dt, "sex"))<<GET keys=""></GET>這段程式碼對我有用。另外,Y 比例會自動調整,這很棒。 但是,如果我想保留某些特徵,例如我希望 Y 最小值為 55,但我想讓 JMP 根據資料範圍選擇 Y 最大值。 在這種情況下我該怎麼做?
在我的情況有所不同,我希望 Y 最小值始終為零,因為我有一條所有值都從零開始的曲線,但出於某種原因,JMP 將變數軸設定設為從負數開始。 儘管如此,即使我希望所有圖表的值都顯示在特定的 Y 最小值上,我也無法讓 Y 最大值根據資料範圍自動變更或直到實際的 Y 最大值為止。
使用上面的腳本並手動執行此操作,當將 Y 最小值設為 55 時,我將得到結果腳本行:
SendToReport(Dispatch({},"height",ScaleBox,{Min( 55 ), Inc( 5 ), Minor Ticks( 1 )}));您將看到產生的兩張圖將具有相同的 Y 最大值,並且設定為低於 70,即使其中一張圖的資料直到 70。
有誰知道如何編寫一個腳本,允許 Y 最大值根據資料範圍進行更改或根據已定義的本地過濾器設定最大值?
謝謝
回覆:如何讓圖形產生器根據 da 為 Y 變數分配變數比例非常感謝吉姆。
回覆:如何讓圖形產生器根據 da 為 Y 變數分配變數比例看起來兩個圖表的最大值都卡住了。然而,這裡有一個解決方法,允許圖表獨立運行。
dt2 = Open( "$SAMPLE_DATA\Big Class.JMP" );
win = New Window( "Graphs", lub = Lineup Box( N Col( 2 ) ) );
Sexs = (Associative Array( Column( dt2, "sex" ) ) << Get keys);
For( i = 1, i <= N Items( Sexs ), i++,
dt2 << select where( :sex == sexs[i] );
dt = dt2 << subset( invisible, selected rows( 1 ), selected columns( 0 ) );
lub << append(
gb = dt << Graph Builder(
Variables( X( :weight ), Y( :height ), Wrap( :sex, N View Levels( 1 ) ) ),
Elements( Points( X, Y, Legend( 7 ) ), Smoother( X, Y, Legend( 9 ) ) ),
Local Data Filter(
Close Outline( 1 ),
Add Filter(
columns( :Sex ),
Where( :Sex == Sexs[i] ),
Display( :Sex, Size( 224, 126 ), List Display )
)
)
);
Report( gb )[AxisBox( 2 )] << Min( 0 );
)
;
);