Tableau でマリメッコグラフを作成する方法

マリメッコグラフの概要や、使用するのに最適な場面を学びました。ここでは Tableau でマリメッコグラフを作成する方法を説明します。

計算を作成する

Tableau でマリメッコグラフを使用する際は、ある程度手間がかかります。適切な場所に、適切なサイズと色でプロットするには、どの値が各マークを必要とするかを考えなければなりません。これを念頭に置いて、データを見てみましょう。6 つの部門のデータは、カリフォルニア大学バークレー校の入学に関する「R」サンプルデータセットから取得したものです。

「Department (学部)」、「Gender (性別)」、「Admission Status (入学状況)」の 3 つのディメンションを持つ大規模なデータセットであるため、精度の高いデータを処理するには、さらに高度な計算を使用する必要があります。上記のマリメッコグラフを作成する手順は、次のとおりです。

1. 値の検証に役立つクロス集計から始めます。[行] には、[詳細レベル] を不連続フィールドとして動作させる x 軸ディメンションを配置します。次に、[色] シェルフに使用される不連続フィールドをその右に追加します。

2.関心のある 1 つ目のメジャー、この場合は「SUM (Applicants)」を [テキスト] シェルフに追加します。

3.合計割合の簡易表計算を使用して、y 軸メジャーを作成します。この場合、「Admission Status (入学状況)」の計算オプションで、「Applicants (出願者)」メジャーを使用しています。

4.[メジャー] ウィンドウで [メジャーバリュー] をダブルクリックします。Tableau では、[メジャーネーム] または [メジャーバリュー] のクロス集計を作成し、[メジャーバリュー] カードを表示します。

5.目的の最初のメジャー (この場合は「Applicants (出願者)」) を [メジャー] ウィンドウから [メジャーバリュー] カードにドラッグします。

6.マリメッコの各列のサイズ (幅) を生成します。この場合、表計算の複雑さを排除できるため、詳細レベル (LOD) 表現を使用して計算フィールドを作成します。

「Applicants per Column (列ごとの出願者)」メジャーの式は {EXCLUDE [Admission Status]: SUM([Applicants])} です。この方法では、「Department (学部)」と「Gender (性別)」のそれぞれの組み合わせにおいて、すべての「Applicants (出願者)」が集計され、結果として必要な列幅が表示されます。これを [メジャーバリュー] カードにドラッグします。

7. ここでは、各列の x 軸の位置を作成する必要があります。そのためには、2 つの質問に回答しなければなりません。まず、このメジャーで、列の左端または右端を決定するか? この場合、計算しやすいため、右端を使用します。

次に、各列 (「Department (学部)」および「Gender (性別)」ディメンションによって作成) の各マーク (「Admission Status (入学状況)」ディメンションによって作成) に同じ値を取得するには、どうすればよいか? これは、「Applicants per Column (列ごとの出願者)」メジャーの累計を生成するだけでよいと思われるかもしれません。

ただし、Tableau の累計の簡易表計算では、データ構造 (特にまばらなデータを扱う場合) に関係なく、確実に機能する計算設定はありません。そのため、自分で構築しなければなりません。

これを行うには、いくつかの方法があります。次の計算では、1 回の計算で目的の結果が得られるため、最も使いやすいと思います。出願者数の式は次のとおりです。特定のディメンションでの計算が含まれます。「Department (学部)」、「Gender (性別)」、「Admission Status (入学状況)」(左記の順) :

IF FIRST()==0 THEN
MIN([Applicants per Column])
ELSEIF MIN([Department]) != LOOKUP(MIN([Department]),-1) THEN
PREVIOUS_VALUE(0) + MIN([Applicants per Column])
ELSEIF MIN([Gender]) != LOOKUP(MIN([Gender]),-1) THEN
PREVIOUS_VALUE(0) + MIN([Applicants per Column])
ELSE
PREVIOUS_VALUE(0)
END

ワークアウトビューでの表示は次のとおりです。

「# of Applicants (出願者数)」フィールドの式は少し複雑ですが、仕組みを見てみましょう。

a. 最初のアドレス (パーティションの行) の場合、「Applicants per Column (列ごとの出願者)」を返します。

b. 以前のアドレスから「Department (学部)」または「Gender (性別)」に変更がある場合 (つまり、新しい列に移動した場合)、このメジャー (以前のアドレス) の以前の値と現在の「Applicants per Column (列ごとの出願者)」の合計を返します。これにより、新しい「Department (学部)」または「Gender (性別)」ごとに累計が増加します。

c. 「Department (学部)」または「Gender (性別)」に変更がない場合、このメジャー (以前のアドレス) の以前の値を返します。これにより、累計が増加することなく、「Admission Status (入学状況)」全体で累計が繰り越されるため、同じ列のすべての「Admission Status (入学状況)」は同じ値になります。

フィールドをビューに追加して、特定のディメンションにアドレスを設定する場合、Tableau 10 ではステップ 2 で定義した行のディメンションの順序を自動的に選択します。

これは、Tableau 10 の新しいデフォルト機能です。以前のバージョンでは、同等のダイアログの順序はアルファベット順で、アドレス指定が正しくない場合がありました。この点が改善され、Tableau がさらに使いやすくなりました。

これで、視覚的に検証したうえで、マリメッコグラフビューを作成できます。

8. ワークアウトワークシートを複製します。

9. [メジャーバリュー] を [テキスト] から [詳細レベル] シェルフに変更します。ビューの値は「Abc」に置き換えられます。

10. [列] から [メジャーネーム] を削除します。すると、「Abc」が重ねて描画されます。

11. 「Department (学部)」、「Gender (性別)」、「Admission Status (入学状況)」を [詳細レベル] シェルフに移動します (左記の順)。Tableau では、ビューが四角のマークの集合体に変更されます。

12. [メジャーバリュー] から、SUM(Applicants) の合計割合の簡易表計算フィールドを [行] に移動します。ビューには、1 つの積み上げ棒グラフが表示されます。

13. [メジャーバリュー] から、「# of Applicants (出願者数)」メジャーを [列] に移動します。Tableau では散布図が作成されます。

14. マークタイプを [棒] に変更します。多くの棒グラフが表示されます。

15. [メジャーバリュー] から、「ATTR(Applicants per Column)」メジャーを [サイズ] シェルフに移動します。Tableau では、サイズを適用して凡例を作成する以外に、[メジャーバリュー] を自動的に削除して、「SUM(Applicants)」メジャーを [詳細レベル] に配置します。

16. [サイズ] シェルフをクリックして、設定を「固定」に変更し、配置を右に設定します。

Tableau 10 の新しい固定コントロールでは、[サイズ] シェルフのフィールドの値を使用して、各棒グラフの幅を設定できます。配置が右に設定されると、各棒グラフはグラフの右端から伸びます。ここでは、列の連続フィールド (この場合は、「# of Applicants (出願者数)」の表計算) に基づいて、グラフが配置されます。

色指定のないマリメッコグラフが表示されます。

この時点でマリメッコのすべての棒グラフが縦方向と横方向に積み上げられていない場合は、先に進む前にトラブルシューティングのヒントを参照してください。

17. 「Admission Status (入学状況)」を [色] シェルフに設定します。

18. 「Gender (性別)」をラベルに設定します。

19. ツールチップを編集して、[コマンドボタンを含める] をオフにします。(このようなビューで、ユーザーが誤ってデータをフィルタリングしたり、グラフを崩したりすることを防ぐためです)

マリメッコグラフにヘッダーを追加する

マリメッコの横軸は連続フィールド (「# of Applicants (出願者数)」) で描画されているため、さまざまな学部を分割するヘッダーはありません。
そのため、読みやすくするためにヘッダーを追加する必要があります。ダッシュボード上の 2 つのワークシートを使用し、ハイライトアクション、または追加の計算と二重軸を使用した自動化のいくつかを利用して、これを手動で行うことができます。

ここでは、インタラクティビティを向上できる可能性があるため、手動によるアプローチを紹介します。このメソッドでは、積み上げ棒グラフを使用して、棒グラフのマークをヘッダーやハイライトアクションのように書式設定できるため、ヘッダーの使用と同じ効果があります。

1. 新しいワークシートを作成します。

2. 開始メジャー (ここでは「Applicants (出願者)」) を [列] にドラッグします。Tableau では水平棒グラフが作成されます。

3. ヘッダーディメンション (ここでは「Department (学部)」) を [ラベル] にドラッグします。Tableau では、ヘッダーをラベルとして積み上げ棒グラフを作成します。

4. ヘッダーディメンションが、マリメッコグラフとは逆の順序で並べ替えられていることを確認します。

5. ツールヒントを編集して、[コマンドボタンを含める] をオフにします。

6. 書式をヘッダーのように設定します。以下は簡単な例です。

7. 固定サイズの新しいダッシュボードを作成します。

8. 必要に応じて、マリメッコワークシートを、タイルまたは浮動のオブジェクトとしてダッシュボードに配置します。

9. タイトルとシートの間に余白を設けられるように、マリメッコのタイトルのサイズを変更 (新しい行を追加するなど) します。

10. ヘッダーワークシートを浮動シートとしてダッシュボードに追加し、[幅を合わせる] に変更して、タイトルをオフにします。

11. 少し手間がかかるかもしれませんが、マリメッコグラフの列に適切に配置されるように、ヘッダーシートのサイズと位置を調整する必要があります。

12. ヘッダーディメンションを使用して、ヘッダーシートの原点とマリメッコシートのターゲットにカーソルを合わせた際に表示する、ハイライトアクションを追加します (ここでは「Department (学部)」)。

13. ヘッダーディメンションを使用して、マリメッコシートの原点とヘッダーシートのターゲットにカーソルを合わせた際に表示する、ハイライトアクションを追加します (ここでは「Department (学部)」)。

Tableau で棒グラフにカーソルを合わせるたびに「Department (学部)」の 4 つのマークすべてをハイライトしないようにするには、2 つのハイライトアクションを個別に設定する必要があります。

ダッシュボードはこのようになります。