====== 【データリテラシー】第6回 データのグラフによる表現 ======
ここではデータを可視化するために便利なグラフについて説明する。
===== グラフの種類 =====
グラフにはその用途に応じて様々な種類があるが、一般的によく使われるグラフは以下のグラフである。
----
==== 棒グラフ ====
長方形の棒の長さでデータの大小を表すグラフである。
* 棒は縦棒と横棒の二通りある。
* 複数の系列の棒を積み上げた積み上げグラフもある。
* 等幅の柱状グラフ(ヒストグラム)は棒グラフで描くことができる。
以下は公益大の在籍者数の推移を棒グラフで表したものである。
{{ data_literacy_past:2021:graph_bar1.png?nolink |棒グラフの例}}
以下は学年ごとに積み上げグラフで表している。
{{ data_literacy_past:2021:graph_bar2.png?nolink |積み上げグラフの例}}
----
==== 円グラフ ====
円を扇形に分割し、扇形の大きさ(角度)で割合を表すグラフである。
* LibreOffice Calc ではデフォルトでデータ系列は反時計回りの順に描かれるが、データ系列のオプションで時計回りの順に変更できる。
以下は公益大の出身地別の入学者数を円グラフで表したものである。
系列の色とフォントの色が同系統だと見にくくなるので、フォントの効果でアウトラインを付けてみやすくしている。
{{ data_literacy_past:2021:graph_circle1.png?nolink |円グラフの例(データ系列は時計回りの順)}}
----
==== 折れ線グラフ ====
データを点でプロットし、その点を線で結んだグラフである。
* 時系列データの場合、横軸を時間軸、縦軸を各時間における値にとった折れ線グラフで時間変動を見ることが多い。
以下は東北6県の人口の推移を表す折れ線グラフである。
{{ data_literacy_past:2021:graph_line1.png?nolink |折れ線グラフの例}}
出典:[[https://www.e-stat.go.jp/stat-search?page=1&toukei=00200521|総務省統計局「国勢調査」(参照 2020-10-01)]]
----
==== 散布図 ====
2変数のデータがあるときに縦軸(Y 軸)と横軸(X 軸)にそれぞれの変数を対応させ、各データを点で打って示した(__**プロット**__した)グラフである。
* 同じ系列の点を線で結ぶと折れ線グラフになる。
* 2変数の(相関)関係を見るために使われることが多い。
以下は [[dataset#データセット1]] の身長と体重の散布図である。
横軸に身長、縦軸に体重をとっている。
身長が大きいと体重も大きくなるような関係性(相関関係)があることが分かる。
{{ data_literacy_past:2021:graph_scatter1.png?nolink |散布図の例}}
----
==== ヒートマップ ====
散布図でデータの密度を色で表現したグラフである。
* 地図と組み合わせてその地点の値を表すために使うこともある(GIS)。
以下は地図上で酒田市の一般世帯数の密度をメッシュの色で表したヒートマップである。
メッシュ(四角の網目)の一辺は 250m である。
色によって密度の高い場所、低い場所が一目で分かる。
{{ data_literacy_past:2021:graph_heatmap1.png?nolink |一般世帯の密度のヒートマップ}}
出典:[[https://jstatmap.e-stat.go.jp/jstatmap/main/trialstart.html|総務省統計局「地図で見る統計(jSTAT MAP)」(参照 2021-09-02)]]
----
==== 箱ひげ図 ====
データを小さい順に並べたときの分布を [[lecture5#四分位数]](もしくは五数要約)を使って「箱」と「ひげ」の長さで表したグラフを__**箱ひげ図**__という。
データがどの付近に集中して分布しているのかが見やすく、特に複数の分布を比較するのに有効なグラフである。
以下は [[dataset#データセット1]] の身長の箱ひげ図である(R を使用)。
箱ひげ図の定義にはいくつかあるが、
ここでの定義は、箱の真ん中の線は中央値 $Q_{2}$ で、箱の下端が第1四分位数 $Q_{1}$、上端が第3四分位数 $Q_{3}$ を表し、箱から上下に伸びるひげの下端が最小値 $Q_{0}$ 、上端が最大値 $Q_{4}$ を表すものとする。
$Q_{2}$ の近くにある「×」は平均の位置を表すが、箱ひげ図には平均を描かないこともある。
{{ data_literacy_past:2021:graph_boxplot1.png?nolink |データセット1の身長の箱ひげ図}}
* 最小値 $Q_{0}$
* 第1四分位数 $Q_{1}$ = 25パーセンタイル
* 第2四分位数 $Q_{2}$ = 50パーセンタイル(= 中央値)
* 第3四分位数 $Q_{3}$ = 75パーセンタイル
* 最大値 $Q_{4}$
以下は [[dataset#データセット1]] の男女別の身長の箱ひげ図である。
男女で身長の分布に違いがあることが一目で分かる。
{{ data_literacy_past:2021:graph_boxplot2.png?nolink |データセット1の身長の箱ひげ図(男女別)}}
LibreOffice Calc では箱ひげ図を描く機能は無いが、頑張ればできるらしい・・・
* [[https://note.com/xinzuzhai/n/n8dcf8dcb8ffd|LibreOfficeで箱ひげ図(外れ値付き)]]
* [[https://note.com/xinzuzhai/n/nb9119124c18c|LibreOfficeで箱ひげ図(5数要約)]]
\\
Microsoft Excel 2016 以降には、データの種類に箱ひげ図が追加されているので、容易に箱ひげ図を作成できる。
ただし、ひげの長さは最大で $1.5(Q_{3}-Q_{1})$ なので、それを超えた値は__**外れ値**__として表示される。
\\
===== グラフの作成 =====
LibreOffice Calc でグラフを作成するには「グラフウィザード」を使用する。
----
==== グラフウィザード ====
まずグラフにしたいデータの範囲を選択する。
その後、以下の操作でグラフウィザードのダイアログを表示する。
^ メニューバー | ''**[挿入]**''%%→%%''**[グラフ]**'' を選択 |
^ ツールバー | ''**[グラフを挿入]**'' ボタンをクリック |
グラフウィザードでは次の4つのステップでグラフを設定する。
* ① グラフの種類
* ② データの範囲
* ③ データ系列
* ④ グラフ要素
各ステップは ''**[次へ]**'' で次のステップ、''**[戻る]**'' で前のステップに移動する。
途中でも ''**[完了]**'' をクリックするとグラフウィザードを終了し、グラフが描かれる。
=== ① グラフの種類 ===
グラフの種類を選択する。
^ グラフの種類を選択 ^ グラフの種類 ^
| 縦棒 | 棒グラフ(縦棒) |
| 横棒 | 棒グラフ(横棒) |
| 扇形 | 円グラフ |
| 面 | 面グラフ |
| 線 | 折れ線グラフ(横軸が質的変数) |
| 散布図 | 散布図、折れ線グラフ |
3Dルックはグラフが立体的になって見栄えがよくなるかもしれないが、グラフからデータを読み取りにくくなるので使わない方がよい。
=== ② データ範囲 ===
グラフにするデータ範囲を選択する。
グラフウィザードを表示する前にデータ範囲を選択していれば、ここはある程度自動的に設定してくれる。
^ 設定項目 ^ 説明 ^
| データ範囲 | グラフに表示するデータの範囲を指定する。\\ 入力フォームの右の ''**[データ範囲の選択]**'' ボタンをクリックするとマウスで範囲が選択できる。 |
| 行内のデータ系列\\ 列内のデータ系列 | データ範囲において、一つの系列のデータが行方向に並んでいるか列方向に並んでいるかかを選択する。 |
| 最初の行を項目名に引用 | データ範囲の最初の行をラベルとして使用するかを選択する。 |
| 最初の列を項目名に引用 | データ範囲の最初の列をラベルとして使用するかを選択する。 |
=== ③ データ系列 ===
データ系列は②データ範囲で指定したデータからある程度自動的に判別してくれるが、ここではより細かいデータ系列の設定を行える。
^ 設定項目 ^ 説明 ||
| データ系列 | 設定するデータ系列を選択する。\\ ''**[追加]**'' ''**[削除]**'' で系列を追加したり削除したりする。\\ ''**[%%↑%%]**'' ''**[↓]**'' で系列の順序を入れ替える。 ||
| データ範囲 | 設定したいパラメータのデータ範囲を選択する。\\ 選択したパラメータのデータ範囲はその下の入力フォームに直接入力するか、その右のボタンをクリックしてマウスで範囲選択する。 ||
| ::: | 枠線の色 | 枠線の色のセルを選択する。 |
| ::: | 塗りつぶしの色 | 塗りぶつしの色のセルを選択する。 |
| ::: | 名前 | 系列名の書かれたセルを選択する。文字列を直接入力しても良いが少し制限がある。 |
| ::: | X値 | X軸のデータ範囲を選択する。 |
| ::: | Y値 | Y軸のデータ範囲を選択する。 |
| 範囲 | ラベルの書かれたセル範囲を選択する。\\ 棒グラフだとX軸のラベルであったり、円グラフだと系列名であったりとグラフの種類によって役割が異なる。\\ 入力フォームに直接入力するか、その右のボタンをクリックしてマウスで範囲選択する。 ||
| データラベル | 散布図でデータラベルの書かれたセル範囲を選択する。\\ 入力フォームに直接入力するか、その右のボタンをクリックしてマウスで範囲選択する。 ||
=== ④ グラフ要素 ===
^ 設定項目 ^ 説明 ^
| タイトル | グラフのタイトルを入力する。 |
| サブタイトル | グラフのサブタイトルを入力する。 |
| X軸 | X軸のラベルを入力する。 |
| Y軸 | Y軸のラベルを入力する。 |
| 目盛線を表示 | どの軸に目盛線を表示するかを選択する。 |
| 凡例を表示 | 凡例を表示する場所を選択する。 |
===== グラフの編集 =====
LibreOffice Calc でグラフを編集するには2つのモードを使い分ける。
* グラフオブジェクトのモード
* グラフ編集モード
----
==== グラフオブジェクトのモード ====
シート上のグラフの領域を**シングルクリック**するとグラフオブジェクトが選択されてグラフオブジェクトのモードになる。
このモードで、マウスを使ってグラフオブジェクトの移動やサイズ変更ができる。
また、右クリックしてコンテキストメニューから以下のことができる。
^ 項目 ^ 説明 ^
| 位置とサイズ | グラフオブジェクトの位置やサイズを数値で指定したり、回転などができる。 |
| イメージとしてエクスポート | グラフオブジェクトを画像として保存する。 |
| 編集 | グラフ編集モードに入る。 |
ツールバーのボタンを使っても同じようなことができる。
----
==== グラフ編集モード ====
シート上のグラフの領域を**ダブルクリック**するか、グラフオブジェクトのモードで右クリックのコンテキストメニューから ''**[編集]**'' を選択するとグラフ編集モードになる。
グラフ編集モードでは、グラフオブジェクト上の様々な部品を選択して設定変更ができる。
選択した部品はツールバーに表示される。
部品を選択した状態でツールバーや右クリックしてコンテキストメニューから設定変更を行う。
{{ data_literacy_past:2021:calc_graph.png?nolink |グラフの部品}}
=== 共通の項目 ===
^ 項目 ^ 説明 ^
| グラフの種類 | グラフの種類を変更する。 |
| データ範囲 | データ範囲や系列を変更する。 |
=== 「グラフ」の項目 ===
^ 項目 ^ 説明 ^
| 位置とサイズ | グラフオブジェクト内でのグラフの位置やサイズを変更する。 |
| タイトルを挿入 | タイトル、サブタイトル、X軸とY軸のラベルを挿入する。 |
| 軸を挿入/削除 | X軸やY軸を挿入/削除する。 |
| 凡例を挿入/削除 | 凡例を挿入/削除する。 |
「グラフ」の位置やサイズ変更はマウスのドラッグでもできる。
=== 「X軸」「Y軸」の項目 ===
^ 項目 ^ 説明 ^
| 軸の書式 | 目盛の最小値・最大値・間隔、軸の位置、目盛の書式などを変更する。 |
| 軸を挿入/削除 | 軸(の数字)を挿入/削除する。 |
| 主目盛線の書式 | 主目盛線の書式を変更する。 |
| 副目盛線の書式 | 副目盛線の書式を変更する。 |
| 主目盛線を挿入/削除 | 主目盛線を挿入/削除する。 |
| 副目盛線を挿入/削除 | 副目盛線を挿入/削除する。 |
=== 「データ系列」の項目 ===
^ 項目 ^ 説明 ^
| データ系列の書式 | プロットする点のアイコン・色、点を結ぶ線などを変更する。 |
| データラベルを挿入/削除 | プロットする点のデータラベル(数値)を挿入/削除する。 |
| 平均値線の挿入/削除 | 平均の位置を表す線を挿入/削除する。 |
| X誤差範囲を挿入/削除 | X軸方向のエラーバーを挿入/削除する。 |
| Y誤差範囲を挿入/削除 | Y軸方向のエラーバーを挿入/削除する。 |
| 近似曲線を挿入/削除 | データに最適な近似曲線(直線)を挿入/削除する。 |
===== グラフを描くときの注意点 =====
* グラフはデータの全体像や傾向を見るためには便利だが、グラフの棒や点の位置からその値を読み取ろうとすると目分量になって読み間違いが生じやすい。これを避けるためにはグラフにデータラベルを表示したり、グラフだけでなく表も付けるようにするとよい。
* 複数の系列を入れるときには、系列を区別できるように色を分けるが、似たような色だと区別がつきにくい。また、グラフを印刷するときにモノクロ印刷しかできない場合は、白黒の濃淡や斜線や網掛け(パターン、ハッチング)で区別がつくようにする。
{{ data_literacy_past:2021:graph_bar3.png?nolink |パターンで区別した積み上げグラフ}}
* グラフに対して3D化などの必要以上の装飾や加工を行うと読み間違いの元になりやすいので、グラフはシンプルにする。
* 何のグラフなのか分かるようにグラフにはタイトルや軸のラベルを付けるようにする。
* 目盛の最小値と最大値はグラフ機能で自動的に決まるが、データが全くない無駄なスペースが大きくなって、データが存在する範囲が狭くなってしまうことがあるので、その場合は最小値と最大値を手動で調整する。
{{ data_literacy_past:2021:graph_scatter3.png?nolink |無駄なスペースがある散布図}}
* 以下は公益大在籍者数の棒グラフで Y 軸の目盛の最小値を 600人にしたグラフである。一見すると年々在籍者数がかなり増えているように勘違いしそうである。これは増大効果を誇張したいときに良く使われる手法であるが、このような誇張表現に惑わされないようにしたい。
{{ data_literacy_past:2021:graph_bar4.png?nolink |縦軸の最小値を 600人にした棒グラフ}}
===== 演習:散布図 =====
* 使用するデータセット:[[dataset#データセット1]]
「身長」と「体重」のデータから散布図を描く。
列 D に「身長」、列 E に「体重」のデータが並んでいる。
=== データの選択 ===
- セル D1 から E501 の範囲を選択する。
- メニューバーの ''**[挿入]**''%%→%%''**[グラフ]**'' を選択してグラフウィザードのダイアログを表示する。
=== ① グラフの種類 ===
- ''**[散布図]**'' を選択する。
- 右側の4つある種類から ''**[点のみ]**'' を選択する(デフォルトで選択されている)。
- ''**[次へ]**'' をクリックする。
=== ② データ範囲 ===
はじめにデータ範囲を指定したので、ここでは何もしなくてよい。
- ''**[次へ]**'' をクリックする。
=== ③ データ系列 ===
データ範囲から自動的に X 値と Y 値が設定される。
- 「データ範囲」の ''**[名前]**'' をクリックし、「名前の範囲」に「全体」と入力する。
- ''**[次へ]**'' をクリックする。
=== ④ グラフ要素 ===
- 「タイトル」に「データセット1の身長と体重の分布」と入力する。
- 「X 軸」に「身長 [cm]」と入力する。
- 「Y 軸」に「体重 [kg]」と入力する。
- 「目盛線を表示」の ''**[X軸]**'' と ''**[Y軸]**'' にチェックを入れる。
- ''**[完了]**'' をクリックする。
これで散布図が描かれる。
----
=== 点を小さくする ===
- グラフ編集モードにする。
- グラフ上の青い四角の点のどれかをダブルクリックして「データ系列」のダイアログを表示する。
- ''**[線]**'' タブをクリックする。
- 「アイコン」の「幅」と「高さ」の値を「0.05 cm」にする。
- ''**[OK]**'' をクリックする。
=== Y 軸の表示範囲を縮める ===
X 軸や Y 軸の表示範囲はデフォルトだと自動的に決められるが、縮めたり広げたりしたい場合は手動で設定する。
- グラフ編集モードにする。
- グラフのY軸の数字をダブルクリックして「Y軸」のダイアログを表示する。
- ''**[目盛]**'' タブをクリックする。
- 「最小値」の ''**[自動]**'' のチェックを外し、値を「30」にする。
- 「最大値」の ''**[自動]**'' のチェックを外し、値を「90」にする。
- ''**[完了]**'' をクリックする。
===== 課題 =====
[[https://jstatmap.e-stat.go.jp/jstatmap/main/trialstart.html|地図で見る統計(jSTAT MAP)]] で現在住んでいる場所、もしくは出身地付近のヒートマップを描きなさい。
- ''**[ログインしないでGISを始める]**'' をクリックする。
- 左上の検索フォームに地名を入力し、[Enter]キーを押して地図を表示する。
- 右下の''**[統計地図作成]**''%%→%%''**[統計グラフ作成]**'' をクリックして「統計グラフ作成」のダイアログを開く。
- 「調査名」で ''**[国勢調査]**'' を選択する。
- 「年」で ''**[2015年]**'' を選択する。
- 「集計単位」で ''**[5次メッシュ(250mメッシュ)]**'' を選択する。
- 「統計表」から ''**[その1 人口等基本集計に関する事項]**'' を選択する。
- 「指標」から ''**[人口総数]**'' にチェックを入れて、''**[指標選択]**'' をクリックする。
- ''**[次へ]**'' をクリックする。
- 「集計単位」で ''**[メッシュ]**'' を選択する。
- ''**[集計開始]**'' をクリックする。
作成したヒートマップを保存するには、''**[統計地図作成]**''%%→%%''**[レポート作成]**''%%→%%''**[シンプルレポート]**'' で「シンプルレポート」のダイアログを表示し、''**[その1 人口等基本集計に関する事項]**'' を選択して ''**[Excelレポート作成]**'' をクリックしてダウンロードする。
保存した Excel ファイル(拡張子 .xlsx)を提出すること。
Excel ファイルは LibreOffice で開くことができる。