For Your ISHIO Blog

データ分析や機械学習やスクラムや組織とか、色々つぶやくブログです。

直感・感覚値で作ってたData Visualizationから卒業する(したい)

データドリブンな組織を作るとか何とか叫びながら、あれ私データ可視化するとき、直感や感覚値だけで適当に色使いやらなんやら作ってるやん?と、ふと思ったのが勉強のモチベーションです。

『The Big Book of Dashboards』という書籍を読んでいます。グラフやダッシュボードを作りデータ可視化を行う上で、データを扱う人間が気を付けるべきことはたくさんあります。それは人間の脳の働きや色覚が異なる人への配慮、色の使い方やデータタイプなど様々です。こういった(恐らくデザイナーさんが普通に知っている)可視化テクニックを体系的に教えてくれる良書であると思います。 デザインや色の使い方を直感や感覚値で選んでいた私はとても参考になっているので、いくつか勉強になった観点を共有します

The Big Book of Dashboards [Book]

Anscombe's Quartet

「そもそもなぜデータの可視化をするのか」という疑問に対しては、アンスコムの数値例(Anscombe's Quartet)に説得力があります。統計学者のフランク・アンスコムさんが1973年に頑張って作ったらしい。実は、4つのグラフのXとYの平均・分散、XとYの相関係数も回帰直線も全て同じになります。実際にプロットしてみると、表や統計量だけでは把握できない情報が存在していて、視覚化により発見できることが理解できます。

f:id:ishitonton:20190405194457p:plain
The Big Book od Dashboards: FIGURE1.1

Preattentive Attributes

Preattentive Attributesは、日本語では前注意的処理とか言います。他のことに注意を払ったり、意識的にデータを理解しようとする前に、無意識に人間の脳がミリ秒単位でする処理のことを指します。この人間の脳の認識処理をうまく活用すると、情報をより効果的に理解させたり、相手の注意を引き付けたりすることができます。

例えば、次の図の中から「数字の9の数を数えてください」という質問に対して回答は簡単だと思います。ただし少し時間がかかると思います。この図に対して、Preattentive Attributesの処理を活かすように少しだけ手を加えると、質問に対する回答がずっと早くなります。

f:id:ishitonton:20190406151532p:plain
The Big Book od Dashboards: FIGURE1.3

次の図の場合はどうでしょうか。おそらく意識的に数字の9を探そうを試みる前に、赤字の数字9に注目したと思います。

f:id:ishitonton:20190406151634p:plain
The Big Book od Dashboards: FIGURE1.4

1つの色を視覚化に使用することは、1つのカテゴリを際立たせるために非常に効果的です。複数色を使う場合でも、カテゴリが少なければ十分識別に有効です。8~10個のカテゴリーがある場合は、色が多すぎて1つを他のカテゴリと識別することは難しくなります。おそらく感覚的には認識されていることだと思います。

上で出てきた色とサイズ以外にも、Preattentive Attributesに有効な特徴はたくさんあります。これらを効果的に利用することで、相手に効果的に情報を伝えたり、組織の意思決定を早くしたりできると考えます。

f:id:ishitonton:20190405201516p:plain
The Big Book od Dashboards: FIGURE1.10

How to Choose Color

「色」の使い方はデータの可視化において最も重要である一方、誤った使い方をされる要素の1つです。色は意図的に利用されるべきです。たとえば、読み手の注意を引きつけたり、データの一部や異なるカテゴリの間の区別を強調したりすることです。

次の図では、色の主要な使い方が説明されています。Sequential(連続)Diverging(発散)Categorical(カテゴリー)Highlight(強調)Alert(警告)です。

f:id:ishitonton:20190406154853p:plain
The Big Book od Dashboards: P15

Sequential Colorは、1種類の色に対して、色の明るさを変更し、グラデーションで表現します。

Diverging Colorは、中間に分岐ポイントを設定し、その中間点からそれぞれ2色のグラデーションを利用して表現します。例えば、ポジネガの可視化などにおいて、ニュートラルをグレーとし、そこからポジティブな値は青のグラデーション。ネガティブな値は赤のグラデーションで表現したりします(ポジ/ネガにどの色を使うかも重要です。西洋文化では、左記に挙げた色使いが一般的で、色だけでポジネガの印象を与えます)。他には、気温の可視化などでは、寒いときは青、暑いときは赤を利用したりしますね。

Categorical Colorは、異なるカテゴリ間で表現を区別するために色を分けて利用します。

Highlight Colorは、読み手に何か情報を際立たせる必要がある時に利用します。ただし、警告や警報以外の用途になります。この色の使い方には様々な方法があります。その一例を以下に示します。

  • 特定のデータポイントのハイライト

  • 表内のテキストのハイライト

  • 折れ線グラフ上の特定のラインの強調表示

  • 棒グラフ内の特定の棒を強調表示

最後のAlert Colorは、読み手に警告を与えるものであり、すぐに注意を惹けるような、明るいアラーミングカラーを利用します。

Color Vision Deficiency

Color Vision Deficiency(CVD)は、日本語だと色覚異常色盲などと訳されます(※専門家でないので誤っていたらご指摘ください)。CVDをもつ人は、色は見えるが大多数の人と見え方が異なっていたり、特定の色を区別できない。本書籍だと女性で0.4%、男性で8%ほど、程度は違えどCVDであると記載されています(※色彩検定のHPには異なる数字が記載されている)。 大企業に勤めていて、大勢の人が可視化したダッシュボードを見る場合や、可視化した情報を一般公開する場合には、無視することはできません。色の見え方は多様であることを理解し、多様な人間が苦なく正確に情報を理解するためには、CVDの人がどのように色を区別しているかの知識を持つ必要があります。

私自身もこれから勉強を始める身ですが、CVDにも様々なタイプがあり一概に全員が同じ傾向にあるとは言えないようです。例えば、protanopia(=red color blindness)Deuteranopia(=green color blindness)Tritanopia(=blue color blindness)などのタイプがあります。

一般的には赤と緑の間の区別に問題を抱えると記載されています。赤と緑を一緒に利用しないことがベストな可視化方法であり、つまり一般的に、信号機色の同時利用を避けるべきです。

下記の図は、左が信号機の色を利用したグラフで、右がCVD(Protanopia)がどのように見えているかをシミュレーションしているものです。信号機のカラーパレットは多くのソフトウェアで普及しており、今日のビジネスで一般的に使用されているため、議論の種の1つです。

f:id:ishitonton:20190406162441p:plain
The Big Book od Dashboards: FIGURE1.24

解決策として、本書ではColor-blind-Friendlyなカラーパレットの知識が手に入ります。一般的な解決方法としては、緑の代わりに青、赤の代わりにオレンジを利用することです。下記の図は、Color-blind-Friendlyな色を利用した場合のCVDの見え方です。

f:id:ishitonton:20190406163845p:plain
The Big Book od Dashboards: FIGURE1.25

まとめ

『The Big Book of Dashboards』には、より細かく、様々なシナリオにおける可視化のテクニックや注意すべき知識が述べられています。今まで感覚でなんとなくやっていたことが体系的な知識として獲得できると思いますので、大変お勧めです。データを扱う人間であれば知っていて損はないと思います。

とりあえず、私自身は、色彩とかCVDに関する知識を身に付けたいモチベが高まっているので、そこらへんの資格をとる勉強をしようと思います。

以上です。