読者です 読者をやめる 読者になる 読者になる

廿TT

譬如水怙牛過窓櫺 頭角四蹄都過了 因甚麼尾巴過不得

原点がゼロでないグラフ、2軸のグラフ

前置き

ここに書くことはすでに言い尽くされているような気がしますが、どうもなかなかご理解頂けていないようなので、改めてしつこく述べます。


棒グラフ

棒グラフは原点がゼロである必要があります。
二重波線で省略を示したとしても、ダメです。

下のグラフは、
f:id:abrahamcow:20141103183233p:plain
http://www.shumei-u.ac.jp/faculties/edu/images/img_edutop2014_graph.png

このように描くべきです。
f:id:abrahamcow:20150202154300p:plain

だいぶ印象が変わることをお分かり頂けるかと思います。
二重波線で省略を示したとしても、原点がゼロでない棒グラフはちょっとの差を大きく見せる働きをします。

棒グラフの棒の塗りつぶし部分はの関係を表すものです。
書き手にそのつもりがなくても、人間の目は塗りつぶしからを読み取ります。

比の関係が保たれない棒グラフは描くべきではありません。

参考:

折れ線グラフ

折れ線グラフは原点が 0 である必要はありません。また、二重波線で省略を示しても構いませんが、必須というわけではありません。必要に応じてそれを行うことは「親切」と言えますが、軸に目盛りがあれば原点がどこかはわかります。

上記ツイートのグラフはスケールの違う軸を2つ重ねているのが問題です。
スケール(単位)を揃えてプロットするとこうなります。

データは WTI原油価格の推移 - 世界経済のネタ帳 と、ガソリン価格推移チャート [ガソリン価格比較サイト gogo.gs]
から借りてきました。

f:id:abrahamcow:20140813022533p:plain

さらに原点を 0 にすると下図のようになりますが、折れ線グラフは推移を見せるものなので、原点 0 にこだわる必要はありません。例えば常に20円以上で推移しているなら、20からスタートさせて問題ありません。

f:id:abrahamcow:20140813022544p:plain

一方で、左右でスケール(単位)の違う軸を2つ設ける折れ線グラフは(パレート図などの例外を除いて)原則として避けるべきです。

f:id:abrahamcow:20140813023218p:plain

軸の目盛りの振り方によって、いくらでも印象が変わってしまいます。

(ところで上記ツイートのグラフは期間の選び方も若干恣意的に感じられます。)

blog.esuteru.com

面グラフ

折れ線グラフと似たグラフですが、折れ線の下部を塗りつぶした面グラフというものもあります。

f:id:abrahamcow:20140813023622p:plain
(このデータは乱数です。)

これは 0 からはじめる必要があります。

やはり人間の目は塗りつぶし部分からの関係を読み取るからです。

原点が 0 でないなら、塗りつぶしを用いるべきではありません。

ドットプロット

使われる機会はあまり多くないようですが、原点が 0 である必要がないグラフとしてドットプロットがあります。

例えば、アンケートの各項目に対応する人数などを表示するのに便利です。

下図は地域別最低賃金の全国一覧 |厚生労働省のデータです。

f:id:abrahamcow:20150202034218p:plain

都道府県間のを見せたいときはこのように、横軸の原点を 0 にしなくて構いません。

Excel で作図する場合は、一度「マーカー付き折れ線グラフ」にしてから線を消して、テキストボックスを回転させたりする必要があります。若干めんどうかもしれません。

作成方法は エクセルでドットプロット - 廿TT をご覧ください。

参考:

名義尺度 ⊂ 順序尺度 ⊂ 間隔尺度 ⊂ 比率尺度

適切なグラフを選ぶためには名義尺度、順序尺度、間隔尺度、比率尺度という言葉を覚えておくと便利です。

  • 名義尺度:名前の違いに意味がある尺度
    • 男と女、血液型の A、B、O、AB など
  • 順序尺度:順序に意味がある尺度
    • 一等、二等、三等など
  • 間隔尺度:間隔の差に意味がある尺度
    • 気温など
  • 比率尺度:比率を取ることに意味がある尺度
    • 身長、体重など

参考:

また、
名義尺度 ⊂ 順序尺度 ⊂ 間隔尺度 ⊂ 比率尺度
という包含関係も把握しておくと便利です。

比率尺度であれば、間隔尺度としても扱うことができ、間隔尺度であれば、順序尺度としても扱うことができ、順序尺度であれば、名義尺度として扱うこともできます。

f:id:abrahamcow:20140813031449j:plain

棒グラフの棒は比率尺度を表すもの、折れ線グラフは縦軸が間隔尺度、横軸は基本的に順序尺度以上(順序尺度または間隔尺度、比率尺度)です。

名義尺度に対して折れ線グラフのようなものを描きたい場合は、折れ線グラフから線を除いたもの、つまりドットプロットを使うとよいでしょう。

原点がゼロでない棒グラフは比率尺度を表しているように見えて比率が保たれておらず、左右で目盛りの違う折れ線グラフは間隔尺度を表しているように見えて間隔が保たれていません。

面グラフは横軸が間隔尺度、縦軸が比率尺度。
ドットプロットは名義尺度に対する間隔尺度を表すグラフです。

例えば、気温(セ氏温度)は間隔尺度ではありますが比率尺度ではありません。

「-1℃ のときは、+1℃のときに比べ、2℃寒い」と考えることはあっても、「-1℃ のときは、+1℃のときに比べ、-1倍寒い」などと考えることはないはずですし、そんな計算には意味がありません。

ここから、「気温(℃)を表すグラフに棒グラフは不向きだな」などと考えることができます。

折れ線グラフは間隔尺度を表すものですから、間隔が保たれていれば比が保たれていなくても問題ないな、と考えることもできます。

参考文献

統計データの視覚化 (Rで学ぶデータサイエンス 12)

統計データの視覚化 (Rで学ぶデータサイエンス 12)

追記(FAQ)

(2014年8月18日)

下記のエントリはたぶんこの記事への言及だと思う。
(ちがったらごめんね)

「折れ線グラフに原点不要」って,いつから一般常識になったの? について:「原点 0 にこだわるべきではありません」が、「原点 0 にしてはいけません」という意味に読めちゃったのかな? 常に 0 からスタートする必要はないですよ、という意味です。

比率尺度を折れ線グラフにするなら原点を 0 にしたほうがわかりやすくなる場合も多いでしょうね。

ちなみに、「各線分の傾きの絶対値が45°に近くなるように描くのがよい」そうです。
折れ線グラフは0点に意味がない…はずだが | Okumura's Blog


二軸グラフはいつでもダメなのか? について:全部を必ず一つのパネルにプロットしろ、という意味ではないですよ。下記のようにふたつに分けてオッケーです。ごめん。ごめん。わかりにくかった?

f:id:abrahamcow:20140818000009p:plain


また、
「単なる散布図だと,時間の順序が不明になるので,線で結んだり,データ識別子を付けたりして下の図のように描けば,時間変動と二変数の関係を同時に表示することもできる。」
とも述べられていますが、うん。じゃあ散布図使えばいいんじゃないかな? 相関をみせたいだけなら、わざわざ左右で軸をあれこれ操作して2つ設ける折れ線グラフを使う必要が見当たらない。

二軸グラフはいつでもダメなのか? - 裏 RjpWiki の例は相関のある例を相関のあるように見せてるので結論は正しいですが、「一方で、左右でスケール(単位)の違う軸を2つ設ける折れ線グラフは(パレート図などの例外を除いて)原則として避けるべきです。」という意見は変わらないですね。

がんばって正しい二軸グラフを描きたいのなら、やめろとは申しませんが、あえて推奨する理由はないと思います。

(2014年1月5日)

グラフの書き方については、データビジュアライズの観点からいくと、もっと目的に沿って柔らかく考えても良い気が。

http://b.hatena.ne.jp/entry/217704441/comment/monnalisasmile

そうかもしれませんね。ご指摘ありがとうございます。

複合的に多次元データを視覚化するとか、インタラクティブなグラフにするとかだったら、例外は発生するかもしれません。

ただ、そういった「データヴィジュアライゼーション」や「インフォグラフィックス」として優れているものは名人芸で、真似するのがむずかしいものです。

多くの人が多くの場合、ふつうに読み書きしているのはここで述べたような昔ながらの統計グラフです。

基本的な図示において、誤った可視化を避けるためには、ここに書いたような基本を抑えたほうがよいと思います。