grammar of graphics / three stages of graphics creation

この記事は「grammar of graphics」についての理解のためのメモです。


可視化の作成において3つの段階にフォーカスを当てる。

  1. Specification
  2. Assembly
  3. Display

1. Specification

ユーザのアクションをフォーマルな言語に置き換える作業を指す。 ユーザはこの言語に気づいていないかもしれないが、可視化の要請を理解するための自動化システムのためには必要。仕様を定義する他の方法は、可視化の深い文法について説明することでもある。 絵画とは違い、可視化は高度に組織化され制約されたルールセットを持っている。 もちろん、絵画も独自のルールを持っていて、特に写真やビデオのような実際の絵では。 とはいいつつ、芸術家はこの独自のルールを強調するために規則を曲げる特権を持っている。 特殊効果技師は、日常で観察しているものよりもビデオや仮想場面が真実であるように騙す事もできる。 可視化ではそうは行きません。私達は僅かな規則とツールだけしか持っていない。データを偽造したり、統計的な可視化の目的に違反することなしには、オブジェクトの位置や色(これらはデータの属性を表現している)を替えることはできない。データを正確にかつ適切に表現するために。 つまり、可視化システムの核は仕様に基づかなければならない。

統計的な可視化の仕様は6つの宣言で表現される。

  1. DATA: データセットから変数を取り出すデータ操作のセット
  2. TRANS: 変数の変形 (例: rank)
  3. SCALE: スケール(基準、階級化)の変形 (例: log)
  4. COORD: 座標系 (例: 極座標)
  5. ELEMENT: グラフと装飾的(aesthetic)属性 (例: color)
  6. GUIDE: 1つ以上のガイド (例: 軸、凡例)

本書のグラフの殆どで、明示的な定義を行うために、可視化の構文的仕様を書き加えてある。 この仕様言語の古いバージョンは、単一の代数処理のすべての側面を取り込んである。 注釈は不格好で特異的だ。しかしながら、要素としてこれらを分離した。 これらの要素はデータをオブジェクトと結びつけ、これらのオブジェクトを含むシーンを特定する。

2. Assembly

シーンとその記述は異なっている。シーンを表現するという目的において、正確に描画するために私達はその幾何的な配列・形状(geometry)、レイアウト、装飾を調整する。 統計的な可視化のプログラムは、仕様の要素から実際のシーンと合わせて描画し、モデル化するのと同様に、幾何的なシーンに組み上げられなければならない。 本書では、シーンの組み上げよりお仕様について多くを説明しているが、表層的な特徴と深い構造を混同しないためにも仕様について学ぶ一方で、組み上げについても重要視して考えなければならない。 仕様からシーンをどのように組み上げると、結果的な振る舞いにどのように影響をあたえるか。 シーンは動的にも静的にもなりうるし、外部のデータか独立したデータなのか、装飾可能なのか不変なのかは、私達がどのように組み上げるかに依存している。

3. Display

可視化を知覚するために、グラフは装飾的な属性や表示システム(紙やビデオ、ホログラムなど)を利用して描画されなければならない。 現代のオペレーティングシステムでは、いくつもの描画メソッドを利用することができる。これらはよく定義され抽象的なインターフェイスが好ましい。 プロダクションでの可視化は、基本的な描画能力とは異なった、その領域での要件がある。 動的な可視化や科学的可視化は、対照的に、burushingやdrill-down、zooming、linking、その他のデータと可視化を結びつける操作などが可能な洗練されたデザインが要求される。 Becker and Cleveland (1987)、Cleveland and McGill (1988) 、Cook and Weisberg (1994)、 Swayne et al. (1998) はそれぞれの要件について紹介している。最近では、仮想現実ディスプレイや没入型環境などがタッチや音といった装飾を可能なまでに拡張している。