我相信您需要做的是向您的Graph Builder中添加一個自定義的JSL。 可以尋址每個單獨的圖,並且可以編寫腳本以將適當的N值添加到每個圖中。下面是一個基於簡單圖形的非常簡單的示例,但是它應該使您了解如何執行此操作

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder(
Size( 525, 496 ),
Show Control Panel( 0 ),
Variables(
X( :weight ),
Y( :height ),
Group X( :age ),
Overlay( :sex )
),
Elements( Line( X, Y, Legend( 8 ) ) )
);
// Get the counts for each of the ages
Summarize( dt, groupBy = By( :Age ), N = Count( :Age ) );
// Make sure stats are complete before moving on
wait(0);
// Find the upper right corner axis values so one can back off a bit and place
// the values of N in an appropriate place
// Place the values into a list, which is required for the graphic function
// that is to be used
theList = {};
theList[1] = (Report( gb )[AxisBox( 1 )] << get max) * .85;
theList[2] = (Report( gb )[AxisBox( 2 )] << get max) * .95;
// Now Place the values
For( i = 1, i <= N Items( n ), i++,
val = "N=" || Char( n[i] );show(val);
Report( gb )[FrameBox( i )] <<
add graphics script( Text( Center Justified, theList, val ) );
);謝謝!我以前沒有遇到過幾個JSL命令,我認為這對我的解決方案至關重要。
我通常生成的數據可視化之一是一組X / Y數據,這些數據按二維類別的分類變量分組,以生成圖的正方形陣列:請參見示例。我進一步覆蓋 X / Y數據由觀察ID組成,以便將一個觀察的所有數據點與一條線連接起來(將另一個變量放入顏色軸以保持結果圖可讀)。
由於技術原因,我不能保證此圖組中的每個像元都具有相同的佔用率。因此,使用我創建的數據的團隊成員需要準確知道每個單元格中存在多少個觀測值(觀測值ID的唯一值),因為否則可視化效果可能會產生誤導。
因為我正在使用覆蓋軸,如果我使用字幕框那麼我就為觀察ID的每個值獲得一個標題:我被要求提供的是每個單元格一個字幕,計算該單元格中存在的觀察ID的唯一值的數量。
當然,可以通過在每個單元格中手動添加標籤來解決此問題,但這顯然很麻煩。我當然可以提供其他可視化效果,但是我的團隊成員已要求進行此特定的可視化效果。
我是否忽略了可以簡單地實現此目的的功能?
