具体例で学ぶ!情報可視化のテクニック

第3回 ツリーマップによる木構造の可視化(前編)

この記事を読むのに必要な時間:およそ 3 分

はじめに

前回は,統計学的観点からの情報可視化へのアプローチとして,「階層的クラスタリング」の手法を紹介し,その実装と動作確認を行いました。

今回からは,階層的クラスタリングの実行結果を視覚的に分かりやすく表現する手段として,「ツリーマップ」と呼ばれるテクニックを取り上げます。

ソースコードのダウンロード

今回作成するプログラムのソースコードは,こちらから一括してダウンロードすることができます。ZIPファイルを展開して生成されるフォルダを,プロジェクトとしてNetBeansに読み込むことも可能です。

ツリーマップの概要

ツリーマップ(treemap)とは,二次元平面上の領域を入れ子状に分割することによって,木構造のデータを可視化する手法です。

ツリーマップを利用した情報可視化の有名な例としては,世界のニュース記事をタイル状に並べて閲覧できるnewsmap図1があります。

図1

図1 newsmap

また,著者の開発したHatenarMaps図2も,ボロノイツリーマップ(voronoi treemap)と呼ばれるツリーマップの一種を使用しています。

図2

図2 hatenarmaps

なお,Javaにはjava.util.TreeMapという名前のクラスが存在しますが,これは平衡木を使用した連想配列の実装を指しており,可視化手法のツリーマップとは全く関係がありませんので注意してください。

ツリーマップの長所

ツリーマップは,一般的なツリー記法と比較して,2つの大きな利点を持っています。

1つ目の利点は,空間効率の良い情報可視化を実現できることです。画面を隙間なく利用するため,限られた空間に多くの情報を詰め込むことができます。ツリーマップを使えば,画面上に数百,数千のノードを一度に表示することも可能です。

2つ目の利点は,分割された各領域の面積を自由に決められることです。newsmapとHatenarMapsでは,このツリーマップの性質を活用し,重要なニュース記事や著名なブロガーほど大きな面積で表示されるように工夫を行っています。

著者プロフィール

浜本階生(はまもとかいせい)

1981年生まれ。栃木県出身。東京工業大学情報工学科卒業。技術やアイデアの組み合わせから面白いソフトウェアを生み出したいと日々考えている。現在,ブログの解析および視覚化の試みとして「TopHatenar」「Blogopolis」を開発,運用中。

URLhttp://d.hatena.ne.jp/kaiseh/

コメント

コメントの記入