macroscope

( はてなダイアリーから移動しました)

データの可視化、とくに2次元直交座標の平面上にしめすこと

【まだ書きかえます。どこをいつ書きかえたかを必ずしも明示しません。】

【この記事は大学の教材の下書きのようなものです。総論から各論にむかうようにしたので、最後にまとめはありません。】

【他のブログ記事やウェブページへのリンクを、追い追いいれていこうと思っています。】

- 0 -
わたしは大学で気象学をおしえている。そして、データを図にして目で見ることがだいじだとおもっている。

いまは、どの分野でも「データの可視化」が重要になっているとおもう。気象のばあいは、すべてではないが大部分のデータが数量データである。そして、それがあらわす量が、時間とともに変化する量であったり、空間分布をもつ量であったりする (その両方であるのがふつうだ)。そして、(自然界からのデータ取得の過程はここでの議論の視野の外とするので) データは計算機上のファイルになっているのがふつうであり、もしその内容が文字からなるテキストファイルであったとしても1画面でみわたせる量ではないことが多く、数値が文字とは別の形でつめこまれているバイナリファイルであることもある。あたえられたデータにどんな情報がふくまれているか知るためにも、データをもとになんらかの図をつくってみる可視化作業が必要なのだ。

わたしはそのための教材をつくる努力をしているが、プログラム例をつくるだけで時間いっぱいになりがちで、趣旨説明をじゅうぶんしていなかったと思う。ここでは趣旨説明をこころみる。いろいろと言いたりないことがあるのだが、ひとまず公開してみる。

【今年も卒業研究の発表会があった。プレゼンテーションファイルを準備する段階で、相談をうけた学生には図の表現について助言したのだが、相談がなかった学生もいて、教員からみて不満な表現の図もあったと思う。(ただし、個別にだれのどの図にどんな問題点があったかは、記録をとることも、おぼえておくこともできなかった。) 今年度、卒業研究のしめきりまぎわには、研究の方法と結果を文章にすることの指導で手いっぱいになってしまい、図のつくりかたについてしっかり指導できていなかったと反省した。それで、読めばわかる教材をつくっておこうと思った。しかし、書きたいことがいろいろあって、書ききれない。ひとまず、頭からしぼりだせたことのうち、わたしなりに一般化できたと思うことを優先して書いてみる。】

- 1 -
データの可視化の目的は、おおきくわけて、自分が見ることと、他人に見せることがある。実際には両者がいりくんださまざまなつかわれかたがあるが、ここでは、おもにつぎの2類型を考えることにする。

  • [A] データ解析者が、与えられたデータや解析結果 (さまざまな段階の中間結果をふくむ) を、自分で見て検討するための可視化。(データ解析を複数の人でやっているばあいは、この「自分」には個人としての自分だけでなく同僚をふくむ。) 【略号 A は「解析」にあたる analysis のつもり。】
  • [P] データ解析者が、解析結果 (ときには与えられたデータの例であることもある) を、解析にかかわってこなかった他人に見せるための可視化。そのうちでもとくに、時間のかぎられた発表で、パソコンからプロジェクターでスクリーンに投影して見せるばあいを典型とする。【略号P は presentation のつもり。】

他人に見せるものには、発表用のほかに、論文や報告書に入れる図があり、そのための方法は、[P] と[A] の中間といえると思うが、図にしめされたものが何であるかのドキュメントがきちんとできていることという要請は [P] よりも (もちろん [A] よりも) きびしいので、それをはたすために図のほうにもくふうが必要なことがある。

- 2 -
この節では目的 [P] のばあいの注意をのべる。

プレゼンテーションでは、ひとつの画面にもりこんで聴衆につたえることができる情報量があまり多くないことに注意が必要だ。どのくらいくわしい図形をつたえることができるかは、パソコンやプロジェクターの画素数、スクリーンの大きさ、会場の明るさなどの条件にもよるし、ひとつのページを見せている時間の長さにもよるし、見る人の視力にもよるから、いちがいにはいえないが、ひとつのめやすとして、文字テキストは1画面に20行以内ぐらいにするべきであり (確実に読んでもらおうとしたら10行以内ぐらい)、図にふくめる文字も同程度にするべきだから、テキストの行間あきを考慮したとしても、文字の たけ (縦方向の長さ ) は画面の高さの 25分の1ぐらい以上にするべきだろう。

目的[A] のためにつくった図は、目的[P] のためには、軸の目盛りにつける数字などが小さすぎることが多い。作図プログラムの、 [P] であいてにつたえたい文字だけ font size を大きくしたバージョンをつくって図をつくりなおすか、[A] の過程でつくった図をプレゼンテーションファイルにとりこんだあとで、プレゼンテーション用のソフトウェアのなかで大きめの文字を上書きするか、どちらかの作業が必要になるだろう。

プレゼンテーション用と論文・報告書用の共通の注意点として、人の視覚のうちでも色を区別する能力には個人差がある。とくに、赤と緑を区別できない人はめずらしくない。数量を色であらわす際には、濃淡あるいは明るさの段階をおもにし、色相を 1つまたは2つのグループにしぼり、2グループにするならば「赤と緑」以外 (たとえば「赤と青」) にする。

ここからさきは、原則としては 目的 [A] と [P] の両方に通用するだろうことをのべる。

- 3 -
統計学にもとづくデータのグラフ化の教材は、単変量の頻度分布の表示 (典型的にはヒストグラム、その省略表現としての「箱ひげ図」など) からはじめることが多い。しかし、気象データをあつかう感覚からは、単変量のあつかいは特殊であり、2変量の分布をしめす散布図を基本と思ったほうがよいと感じている。

同じ対象物について、複数の属性が観測 (あるいは計算) されて数値がえられている。そのうち2つの属性をとりだしてあつかうことができる。たとえば、 連続の大気の小部分を仮想的に切り取って「空気塊」とみなすことにすると、いくつもの空気塊について、それぞれ「気温」 と「水蒸気圧」の 2つの数量の値がある。そこで、横軸に気温、縦軸に水蒸気圧の座標軸のはいった 2次元の平面を用意し、それぞれの空気塊の気温と水蒸気圧の組のところに点をうつ (一定の形の記号をかく) ことによって、「気温と水蒸気圧との散布図」をつくることができる。その点の分布をみると、(あたえられたデータの範囲での) 2つの属性の統計的関係がわかることもある。このばあいは、おそらく、気温が高いほど水蒸気圧が高いだろう。

水蒸気圧を、気温によってきまる (気温から、たとえば Tetens の式によって計算できる) 飽和水蒸気圧でわると、相対湿度が得られる。横軸に気温、縦軸に相対湿度をとった散布図をつくることができる。気温と水蒸気圧との関係の主要な部分を消去した形になるので、点の分布からは、気温と相対湿度との関係についてはなにも言えないかもしれない。([A] の過程のなかでは、主要な関係を消去してデータをみなおし、主要な関係のかげにかくれていた関係を発見したり、明確な関係が見られないことを確認したりする、という作業が有益であることがよくある。)

地上観測の気温と相対湿度との散布図は、つぎのようにつかわれている。【ここでは、気温と相対湿度が「気塊」の属性ではなく、(ひとつの地点の) さまざまな日時の観測値の属性だとし、3つめの属性として「天気」があり、それは「雨」「雪」をふくむ定性的な値をとるとする。】 雨がふったばあいと、雪がふったばあいの、気温と相対湿度との散布図を、同じ2次元平面上に、雨と雪とを記号の形なり色なりで区別して、かさねてみる。散布図のうちで、雨の事例がしめる領域と、雪の事例がしめる領域は、わずかにかさなるけれども、だいたい、ひとつの ななめ線をさかいにわかれるだろう。この図から得られた知識をつかえば、気温と相対湿度を予測することができれば、雨になるか雪になるかを予測することができるだろう。

縦・横のどちらの軸の変数も、連続量 (数学でいう実数で表現される数量) で、値の出現する確率が軸の変数の値に対してゆるやかに変化するならば、散布図の平面上にあらわれた点の密度 (図の面積あたりの点の数) を、2変量の結合確率に対応するものとみることができる。

しかし、観測や集計にもとづくデータで散布図をつくるときには、数値の表現上の精度についての注意が必要だ。原理的に整数しかとらない変数ならば、点は軸上の整数値のところに集中する。また、観測データの多くは小数点の下の一定のけた数までで止めた固定小数点表現だ。たとえば℃表示の気温が小数点1けたまでの数値であたえられているとすれば、点は軸上の 0.1 [℃] の倍数のところに集中する。ふつうの図のつくりかたでは、同じ位置にかさなった点は1個の点と区別がつかないから、図から読みとられた点の密度の分布は実際のデータの分布とはちがうものになってしまう。対策としては、データ値に乱数をくわえて点の位置をちらす方法、点が何個かさなっているかをあらわす記号を導入する方法、2変量平面を方眼にくぎってます目ごとのデータ点の密度 (図の面積あたりのデータの件数) を計算してそれを図示する方法などがあるが、どれも簡単でない。散布図はこのようなむずかしさをかかえた技法だと承知したうえでつかっていくのがよいだろう。

- 4 -
時間とともに変化する数量 (たとえば気温) があるとき、一方の軸 (横軸としておく) に時間、他方の軸 (ここでは縦軸) に変化する数量をとって、散布図と同様に点をうって (一定の記号をかいて) グラフをつくることができる。これを時系列グラフの基本の形と考えよう。

点と点をつないで折れ線グラフにすることもできるが、それが有効なのは、あいだの時間の数量の変化が連続的であると仮定してよいばあいだ。われわれは気温の日変化がどんなものかだいたい知っているから、1時間間隔の気温の観測値が毎時そろっていれば、それをつないで折れ線にしてもよいと思う。しかし、6時と18時の観測値があってあいだがぬけていたら、そこを線でむすんではまずいと思うだろう。

降水量などの時系列には、各時刻ごとに棒をたてた棒グラフがつかわれることもある。長方形の面積を降水量に対応させる考えかたもあるが、ここでは、時間間隔が一定 (たとえば1時間) で、棒の高さ (長さ) が (ここでは1時間あたりの) 降水量に対応すると考えることにする。この方法が有効なのは、しめされる数量が降水量のように数量の原点 0 が明確な量であって、しかも横軸を 縦軸の目盛り「0」にあわせてかいているばあいである。人が図形から数量を認知する能力のうち、長さの認知はわりあい正確だ。そこで、棒グラフをみたとき、人は直感的に棒の長さに比例するなにかを感じる。棒の長さと降水量とが比例していればその直感は降水量をつたえるのに有効だが、ちがっていると混乱するのだ。横軸の位置が縦軸の「0」でないような配置にしたほうが、数量の変化がわかりやすいこともあるが、そのばあいは、棒グラフではなく、上にのべたような点グラフがよい。(時間に対して連続的に変化するばあいは折れ線グラフでもよい。)

気温のばあいは、0 K (絶対零度) は物理量として明確な原点ではあるが日常の温度のグラフの原点としては不適切だし、0 ℃ は物理量としての原点ではないので、棒グラフはうまくない。(水の凍結融解に関することがらのばあいや、生物の活性に関することのうち 0℃をしきい値とみなせるばあいには、0℃からの棒をかくのが適切なこともあるかもしれない。)

なお、パソコンのソフトウェアのうちに「3D棒グラフ」とよばれる機能があることがある。これは3次元のデータをあつかえるわけではなく、棒グラフの棒を、3次元の四角柱か円柱をななめから見たような形でかくものだ。このような機能は、画面上の長さによって数量をつたえるという目的には、精度をわるくするものであり、科学研究の発表にはつかうべきではないと思う。(プレゼンテーションをたのしくする効果のために提供されているのだろうが、わたしにはたのしくもない。)

時間ではなく空間にともなって変化する量のばあいも、空間座標のひとつを時間にかわって横軸にとれば、時系列についての方法を応用できる。空間の複数の軸にともなう変化をいっしょに表示することは、専門家にとっても難題である。ふつうは東西・南北・上下の軸をつかい、ななめにつたわる波などがみられたばあいにはその方向に軸をとりなおすのがよいだろう。

- 5 -
われわれは、3次元空間、時間をあわせれば 4次元時空 の中にいる。3次元空間のなかの位置は 3つの座標値 (ひとまず x, y, z としておく) であらわされる。気象学であつかわれる多くの物理量は、3次元空間の座標 x, y, z と 時刻 t との関数である。(鉛直次元をもたず 水平座標 x, y と時刻 t の関数であるばあいもある。) なお、両極地方以外の気象をあつかうときは、x を東向き、y を北向き、z を上向きにとるのがふつうである。(実際には、気圧 p を鉛直座標にとることが多い。そのばあいは p 軸の座標値のふえる方向は地球上で下向きなので図でも下向きにするのがふつうである。)

コンピュータグラフィックスの専門分野では、グラフィックスといえば 3次元グラフィックス技術をさすことが多いようだ。しかし、気象の分野では、3次元グラフィックスをあまりつかわず、x, y, z, t のうち 2つをえらんで横軸と縦軸にとった 2次元平面表示を大量につかう。それは、3次元グラフィックスがおもに固体の立体の表面がどのように見えるかを再現することをめざしてきたのに対して、大気は連続体であって地表面以外に明確な表面をもたないからだと思う。

- 6 -
2次元平面に分布する数量を表示するには、平面上に点をうって、そこに数字をそえたり、記号の種類や色を数量の階級別にかえたりするのが基本である。空間座標についての連続性を仮定できないときには、ほぼそれしかない。

平面内のベクトル量は、矢印で表示することができる。また、風速ベクトルにかぎっては、天気図の慣例の矢羽根表現もある。

ベクトルでない量 (スカラー量) にもどって、数量が空間座標について連続的に変化すると期待できるばあいには、等値線という表現方法をつかうことができる。 英語では「等値線」にあたる語は isopleth なのだが、その図形の形をあらわす contour (コンター) という語がつかわれることが多い。「等値線」の本来の意味は、数量のひとしいところをむすんだ線である。たとえば 数値が 1000 の等値線をひきたいとして、 1つの地点の観測値が 990、もうひとつの地点の観測値が 1010 であるとすれば、等値線はその間をとおるはずだ。数量が空間座標の連続関数ならば、等値線は、閉じるか、図の端に達するはずだ。等値線が閉じたばあいには、その内側の値は、まわりよりも大きいか、まわりよりも小さいかのどちらかだ。

等値線ではさまれた区間ごとに色あるいは模様でぬりわけることもできる。

2次元平面としては、まず水平面 (x-y) を考えるが、南北・鉛直断面 (y-z) や東西・鉛直断面 (x-z)、あるいは x と y をくみあわせた ななめ方向の鉛直断面を考えることもある。

- 7 -
全体に対するわりあいをあらわすグラフ表現方法には、帯グラフと円グラフがある。

人が数量を直感的に知覚する能力は、長さのほうが角度や面積よりも確実なので、わりあいを長さのわりあいであらわす帯グラフのほうがよく、角度であらわす円グラフはよくない、という人がいる。わたしもそれに基本的に賛成なのだが、例外があると思っている。

それは、わりあいをあらわす小さなグラフを、地図上、あるいは2変量の散布図上に、点のかわりに配置したいばあいだ。帯グラフどうしで同じ要素がしめるわりあいを比較することは、帯の端の位置がひとつの直線上にそろっているときはうまくいくが、そろっていないときは、むしろ、円グラフの角度の比較のほうがうまくいく。

ただしこれは、全体のうちで1つの要素 (aとする) のわりあいだけをつたえる (円が a と「a以外」の2色だけにわけられる) ばあいにかぎる。そのばあいには角度の読み取りと円周上の位置の読み取りが同じことになるからだ。円グラフで 2つ以上の要素のわりあいを比較させるのはうまくない。

また、角度を読みとりたいのだから、円グラフの扇型をしきる半径の線は、円の中心に達していなければならない。

なお、上にのべた「3D棒グラフ」と同様、「3D円グラフ」は、数量をつたえる目的にはつかうべきではない。

(ひとまず ここまで。)