🐈

Tableauのグラフでディメンションを可変にする

2021/08/03に公開

これは何

一つのグラフで、ディメンションを月次や日次(monthly, daily)など可変にして見れるようにするための方法を記載してます。

この記事ではBigQuery一般公開データの「Austin Crime Data」を利用して、グラフを作成してみたいと思います。
https://cloud.google.com/bigquery/public-data?hl=ja

アウトプット

以下のように、ディメンションを変更できるパラメータが追加されていて1つのグラフ(Tableauではワークシートと呼ぶ)で複数のディメンションを切り分けることが可能になります。


dailyのグラフ


weeklyのグラフ

やり方

ではここから具体的なやり方を画像とともに紹介します。
なお、前提条件としてBigQueryへの権限を有しデータソースの接続が出来てる状態とします。

パラメータの作成

まずパラメータの定義をします。


パラメータの作成を選択


画像のように入力(月次、日次などの変数は必要に応じて調整)

計算フィールドの作成

先ほど作成したパラメータ(Date Part)を利用した計算フィールド(date part)を作成します。ここで作成した計算フィールドがディメンションになります。
つまり、ディメンションの中身がパラメータによって可変になる、という感じです。


「計算フィールドの作成」を選択

計算式にて DATE(DATETRUNC([Date Part], [Timestamp])) と入力します


計算式入力窓

グラフの作成

今回は横軸を先ほど作成した計算フィールド(date part)を横軸に、unique keyのカウントを縦軸にしてグラフを作成します


作成したグラフ

その後、作成したパラメータ(Date Part)から「パラメーターの表示」をクリックしてパラメータをワークシートに表示させます


「パラメーターの表示」をクリック


ワークシートにパラメータが表示されたグラフ

以上で基本的な作成は終わりです。一方でグラフによっては日次にした場合の範囲が広すぎる場合もあるので、rank関数を利用して範囲をフィルターしたいと思います。

(必要に応じて)横軸の範囲のフィルター

まず、計算フィールドの作成で以下のようなフィールド(rank)を用意します。

次に、作成したフィールド(rank)をフィルターの枠にドラッグ&ドロップします

フィルターの範囲編集にて、最大値を60に指定することで、直近60期間(日次なら60日分、月次なら60ヶ月分)のグラフのみが描画されるようになります。


フィルターの編集画面


表示の範囲が絞られた後のグラフ

Discussion