Tableauを利用すると、直観的なインタフェースで様々な目的に応じたグラフを描くことができます。
本ページではデータの度数(頻度)を把握するためのヒストグラムを紹介します。
ヒストグラムはひとつの軸が階級、もうひとつの軸が度数に相当し、各階級の度数が棒グラフで表されるデータの分布を理解するのに適したグラフです。
以下では縦方向に度数を表示するシンプルなヒストグラムと、縦横双方向にヒストグラムを表示するマージナルヒストグラムに分けて作成方法を紹介します。
シンプルなヒストグラム
実際にスーパーストアの注文データを利用して、ヒストグラムを作成してみます。
【完成図】
以下のような図を作成します。
本VizはTableau Publicに上げています。
【作成方法】
- 横軸を利益の階級にしたいので、まず階級を作成します。
データペインの「利益」を右クリックして、メニューから「作成」-「ビン」を選択します。
ビンの編集で「ビンのサイズ」を「5000」にしてみます。
(後で調整可能なので、まずは階級幅を5000円にしてみます。) - 作成された「利益(ビン)」を選択して、列にドラッグ&ドロップします。
- 次にデータペインの「注文(カウント)」を選択して、行にドラッグ&ドロップします。
ちなみに、「注文(カウント)」とはテーブルのレコード数を指しています。Tableauが自動で用意してくれるフィールドになります。
ヒストグラムが表示されましたが、グラフが右側に偏っています。 - グラフが中央に表示されるように調整していきます。
列の「利益(ビン)」を右クリックして、メニューから「連続」を選択します。
すると列の「利益(ビン)」が青色(不連続)から緑色(連続)になります。
列の「利益(ビン)」の右端をクリックして、メニューから今度は「フィルターを表示」を選択します。
右上にフィルターが出現しました。
最頻値周辺にフォーカスするように、フィルターの幅を狭めます。例えば-10から10にしてみます。
グラフが中央に表示されるようになりました。 - 最後に各棒グラフの上に割合(%)を表示します。
行の「カウント(注文)」を⌘キー(WindowsではCtrlキー)を押しながらマークのラベルにドラッグ&ドロップします。
さらにマークの「カウント(注文)」を右クリックしてリストから「簡易表計算」-「合計に対する割合」を選択します。
完成しました!
利益が0円から5,000円以下の注文が最も多く、全体の58%を占めていることが分かります。
【階級幅の調整】
一旦ヒストグラムを作成すると、特定の階級に頻度が集中するヒストグラムや、逆にどの階級でも似たような頻度のヒストグラムになっていることがよくあります。
例えば上の例では、利益が0円から5,000円以下の注文数が極端に多いので、もっとその内訳を細かく見てみたくなります。そのような場合には、階級幅を狭くして気になる箇所を詳しく分析してみることができます。
上の例でビンの幅を変更する方法を紹介します。
データペインの「利益(ビン)」を右クリックしてリストから「編集」を選択します。
ビンの編集で「ビンのサイズ」を「1000」にしてみます。
階級幅が狭くなり、利益が1,000円刻みで表示されるようになります。
利益が0円から1,000円以下の注文が最も多く、全体の38%を占めていることが分かります。
さらに利益が-1,000円未満の赤字も10%あることにも気付きます。
ヒストグラムは階級幅を試行錯誤して調整すると多くの気付きが得られそうです。
ヒストグラムの階級幅をパラメーターを利用してインタラクティブに調整可能なVizにすることもできます。作成方法は以下で紹介しています。
LODを利用した注文回数別顧客数のヒストグラムの作成方法は以下で紹介しています。
双方向のヒストグラム
上記では縦方向に度数を表示するシンプルなヒストグラムを紹介しました。
今度は縦と横の双方向にヒストグラムを表示するマージナルヒストグラム(marginal histogram)を作成する方法を紹介します。
マージナルヒストグラムは度数(頻度)を2種類の階級で集計したい場合に適したグラフです。
例えば、顧客数を曜日別と時間帯別に集計したい場合や利用者数を月別と日にち別に集計したい場合等に威力を発揮します。
実際にスーパーストアの注文データを利用して、ヒストグラムを作成してみます。
【完成図】
以下のようなVizを作成します。
曜日別と月別に注文数の多い時間帯が色濃く表示されています。
本VizはTableau Publicに上げています。
【ポイント】
マージナルヒストグラムは
①上側のヒストグラム
②中央のヒートマップ
③右側のヒストグラム
の3つのパーツから構成されています。
ポイントは以下の2点になります。
- 軸の一致
ヒートマップの縦軸と右側ヒストグラムの縦軸、ヒートマップの横軸と上側ヒストグラムの横軸を一致 - 作成の順序
3つのチャートをそれぞれ別々のシートで作成した後にダッシュボード上で合体
ダッシュボード上のレイアウトの基本は以下でも紹介しています。
【作成方法】
- まず最初に中央のヒートマップから作成していきます。
データペインの「オーダー日」を列にドラッグ&ドロップにして、リストから「詳細」-「曜日」を選択します。
データペインの「オーダー日」を行にドラッグ&ドロップにして、リストから不連続の方の「月」を選択します。
データペインの「注文(カウント)」をマークの色にドラッグ&ドロップします。
月&曜日別のヒートマップが完成しました。 - 次に右側のヒストグラムを作成します。
データペインの「注文(カウント)」を列にドラッグ&ドロップ、「オーダー日」を行にドラッグ&ドロップにしてリストから不連続の方の「月」を選択します。
データペインの「注文(カウント)」をマークの色にドラッグ&ドロップして、マークのタイプを「棒」に変更します。
月毎の注文数を表すヒストグラムが完成しました。 - 次に上側のヒストグラムを作成します。
データペインの「オーダー日」を列にドラッグ&ドロップしてリストから「詳細」-「曜日」を選択、「注文(カウント)」を行にドラッグ&ドロップにします。
データペインの「注文(カウント)」をマークの色にドラッグ&ドロップします。
曜日毎の注文数を表すヒストグラムが完成しました。 - 最後に作成した3つのシートをダッシュボード上に配置します。
2段のダッシュボードの上段から作成していきます。
まずは垂直方向、次に水平方向のオブジェクトをドラッグ&ドロップします。さらに上側のヒストグラムとその右に空白をドラッグ&ドロップします。
以下のようになります。
次は下段の作成です。
上段の下に水平方向をドラッグ&ドロップします。さらに中央のヒートマップとその右に右側のヒストグラムをドラッグ&ドロップします。
凡例を削除します。
全てのシートのタイトルを非表示にします。
不要なフィールド名は非表示にします。
シートの位置を微調整して完成です!
曜日別では木金土日、月間では5月に注文数が多いことが分かります。
本ページではデータの度数(頻度)を把握するためのヒストグラムを紹介しました。
列を「連続」に設定してフィルターで調整すると表示範囲を自由に調整できるようになります。