Excel2007でヒートマップを作る

 上の人がヒートマップを作りたいというので、Excel2007から搭載の条件付き書式で作成。いつも値の非表示のやり方で詰まるので、最初からメモ。
 Rでクラスタリングからやってもいいんだけど、その辺の処理は既にSPSSでやってあったので、そのデータを援用。SPSSでヒートマップ書けないらしいですね、謎。


 [条件付き書式]→[カラースケール]→[その他のルール]で[三色スケール]を選択。
 最低値、中間値、最大値を適宜決める。マイクロアレイのヒートマップなんかだと緑、黒、赤で振っているものをよく見るけど、色覚異常に優しくないので却下。緑、黒、マゼンタだといいらしいですよ。マゼンタはrgb(236,0,140)で(wikipediaより)。

 このままだと値が邪魔なので、セルの書式を弄って値を非表示にする。
 右クリック→[セルの書式設定]→[ユーザー定義]で種類を";;;"にすれば値は表示されなくなります。戻すときは分類を[標準]に。


 先方はExcel 2003しかもっていなくて、カラースケールを表示できなかったので、PDFに出力して渡す。
 MS Office 2007系はこういう視覚化については優れてますね。リボンも直感的に操作できるようにという工夫の末に実装されたものだけに、それほど混乱することなく使えるし。惜しむらくはWindows Vistaとセットでとられることが多いことか。XP上で操作してるの目の前で見ておきながら「でも2007ってVistaじゃなきゃ動かないんでしょ」と言う人もいるくらいだし。


 写真はrand()で適当に生成した乱数に0〜0.5〜1で色を振ったもの。クラスタリングはしてません。