在 BigClass 中尋找外星人的過程中,今天我想生成一個熱圖來讓外星人一目了然。
想法:將非外星人學生塗成綠色,將外星人塗成紅色。
但對於幾個同年齡段的非外星人來說,外星人的紅色只是略微可見:

下一個想法:
讓我們增加非外星人的透明度,以便讓外星人所在的年齡段變得清晰可見。
我執行這些細胞變紅(帶有一些綠色的觸摸) - 但它們是綠色的,而不是紅色的。
似乎透明度沒有針對不同顏色單獨處理,但是混合的以及然後應用於混合顏色。
所以,5% 綠色 + 100% 紅色給出

最後一次嘗試:
更改數據類型並使用最大摘要統計:

有時,如果您想聚合,從字符切換到數字會更容易 - 就像這裡一樣。
但字符值的聚合也有一些潛力:
摘要和製表:為字符列添加聚合選項
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << New Column( "alien", Character,nominal, set each value( "-" ) );
dt << add rows( {name = "XX", alien = "alien", sex = "M", age = 15} );
dt << add rows( {name = "YZ", alien = "alien", sex = "F", age = 12} );
dt << add rows( {name = "KR", alien = "alien", sex = "F", age = 17} );
// first attempt
dt << Graph Builder(
Variables( X( :sex ), Y( :age ), Color( :alien ) ),
Elements( Heatmap( X, Y, Legend( 10 ) ) ),
SendToReport(
Dispatch({},"400",ScaleBox,
{Legend Model( 10, Properties( 0, {Fill Color( 36 )}, Item ID( "-", 1 ) ) )}
)
)
);
// second attempt: increase transparency for non-aliens
dt << Graph Builder(
Variables( X( :sex ), Y( :age ), Color( :alien ) ),
Elements( Heatmap( X, Y, Legend( 10 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model( 10, Properties( 0, {Fill Color( 36 ), Transparency( 0.05 )}, Item ID( "-", 1 ) ) )}
)
)
);
// 3rd attempt: aggregate
Graph Builder(
Variables(
X( :sex ),
Y( :age ),
Color( :alien_num, Summary Statistic( "Max" ) )
),
Elements( Heatmap( X, Y, Legend( 10 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
10,
Properties( 0, {Fill Color( 36 )}, Item ID( "0", 1 ) )
)}
)
)
)