Amazon QuickSightで、閲覧者が操作できるフィルタを作成する

BIツール二刀流の予感
2019.05.10

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

どうも。DI部@大阪オフィスのtamaです。

今回はAmazon QuickSight(以下QuickSight)の、ある簡単な機能の操作方法を、自分のために書いておきます。ビューを見る側の人が自由に操作できるフィルタを用意するという内容です。

2つのゲームを同時にプレイするような、そんな気持ちだから…

私のブログ履歴(?)を見ていただければわかると思うのですが、私は普段はTableauというBIツールをメインに扱っています。しかし、最近、QuickSightも操作する機会ができてました。

全く別のツールならいざ知らず、同じBIツールというジャンルの別製品を扱うっていうのが、意外と混乱するんですね。

あるアクションゲームをプレイしている間に、別のアクションゲームをプレイすると、操作方法について混乱しませんか?「あ、このゲームのジャンプボタンはこっちか!」的な…。そんな現象が、BIツールでも起こっている…私の中で…というわけです。

ですので、ちょこちょこQuickSightのエントリも書いていこうかなと。そんな気持ちです。

QuickSightのエントリは既にたくさんあるんだよ

「お前のどうでもいいメモみたいなエントリはええから、ちゃんとしたQuickSightのエントリを読ませんかい!」という方は、下記をどうぞ。

本題〜まずはフィルタを設置したいグラフを適当に作ります

使用データ

Tableauでお馴染みのサンプルデータストアです。

データをアップロードする

ここからアップロードしますよ。

シートを指定する

Orderシートを使います。

後の設定がデフォルトで

そのままウィザードを進めると、編集画面に辿り着きます。

折れ線グラフを作る

今回は「注文日時を横軸とした、売上と利益の折れ線グラフ」を作りたいと思います。

ビジュアルタイプで折れ線グラフを指定

QuickSightは、ここで予めビューの種類を選ぶことができます。

必要な項目を追加していく

画面上部に、必要な項目を配置していきます。X軸…つまり横軸は、先述したように「注文日時」なので、Order Dateを配置します。

「値」は集計したい数値…Tableauでいうところのメジャーですね。今回は売上と利益を集計したいので、SalesProfitを配置します。

注文日時の粒度を調節する

このままだと、注文日時の一番細かい粒度でグラフが描画されてしまい、すごくわかりにくいです。ですので、「月別」くらいにロールアップします。

グラフのX軸から粒度を変更することができます。

ちょうどよくなりました。

パラメータを用意する

さて、ここから「閲覧者が操作できるフィルタ」を作っていきます。ちなみに、今回は「地域」と「注文日時」のフィルタを作りたいと思います。

「閲覧者が操作できる」ということは、要するに選択項目みたいなものを配置する必要があります。これは「パラメータ」(とコントロール)を設定することで、実現できます。

「地域」のパラメータを作成する

というわけで、まずは地域を選択できるパラメータを作成します。画面左部から「パラメータ」を選択して、パラメータ作成ウィンドウを開きましょう。

地域にあたる項目「Region」の値は文字列です。というわけでデータタイプは文字列です。また、パラメータの名前は英数字じゃないとダメです。

「パラメータが追加されました」というウィンドウは、今は無視します。

「注文日時」のパラメータを作成する

同じ要領で注文日時フィルタ用のパラメータを作成します。

データタイプは「日時」です。また、デフォルト値の日付を設定する必要があります(データを見て適当に決めます)。

今回は「○月○日〜○月○日」という、2つの日時間でフィルタリングできるフィルタを設置しようと思います。これは指定する日時が2つ存在するので、パラメータも2つ用意します。

2つ用意しました。

パラメータと連動したフィルタを作成する

パラメータを作ったので、いよいよフィルタを設定します。

地域フィルタを作成する

画面左部のメニューから、フィルタを選択して、新規作成します。地域フィルタなのでRegionカラムを指定します。

これで、フィルタ自体は作成されましたが、まだパラメータを設定していません。先程作ったパラメータを選択します。

こんな画面が出てきますが、ここのフィルタタイプを「カスタムフィルタ」にします。そして、「パラメータを使用」にチェックを入れて、先程作った「Region」というパラメータを設定します。

これで「適用」して完成です。

注文日時フィルタを作成する

同じ要領で設定します。設定はこんな感じ。

コントロールを設定する

ついにパラメータと連動したフィルタが設定できました。あとは、これを操作する部分を用意するだけです 。それは「コントロール」を設定することで実現できます。

パラメータ画面から「コントロールを追加」を選択。

下記のような感じで設定。こちらは日本語も名前に使用できます(人に見せるから?)。

操作できるフィルタを配置することができました。

同じ要領で、注文日時フィルタも追加します。設定後はフィルタとX軸の粒度を変更して、2010年5月の日別の売上推移を見るということもできます。

おわりに

非常にシンプルな操作ではありますが、冒頭で述べたように、Tableauという別のBIツールに慣れていると、同じ操作でも、QuickSightではどうやるのか混乱しちゃうので、自分のためにドキュメントとして残しておきます。