フリーテキスト入力による可視化。
前回の「Tableau Ask Data 試し打ち#01」では、Ask Dataを利用可能な状態にし、サンプルのお問い合わせ文を試すところまで行きました。今回は構文の解説も踏まえながら、フリーテキストの入力によるデータ可視化にトライします。
前回も実行した「sum of 売上」という問い合わせを[このデータ ソースのフィールドについて尋ねる]と書かれたテキスト入力エリアに入力して実行してみましょう。すると、前回と同様の結果が新規ウィンドウで表示されるかと思います。
これは、集計の切り口を指定しない全体の売上の合計でした。そこで、切り口を指定した集計を試してみます。まずは都道府県ごとの売上を集計します。[質問を変えるかすべて消去してから、もう一度やり直してください]と書かれたテキスト入力エリアに「by 都道府県」と入力して実行してみましょう。
すると、都道府県ごとの売上が、降順でソートされた状態で棒グラフが表示されます。これはワークシートにて、メジャーである売上を列に、ディメンションである都道府県を行に設定し、売上の降順でソートを行なった場合と同様の可視化表現です。すなわち、メジャーに対しては[sum of]などの集計用の句を、ディメンションに対しては[by]などの切り口指定用の句を、それぞれ組み合わせることで、ワークシートの場合と同様の表現が可能になるということになります。
また、売上の昇順にソートしたい場合は、ビュー下部の「売上」の右横の並べ替えボタンでも可能ですが、せっかくなので問い合わせ文でやってみましょう。同じくテキスト入力エリアに、ソートの切り口指定である[sort]を使って「sort 都道府県 in asc 」と入力します。テキスト入力エリア下にプルダウンが表示され「sort of 都道府県 in ascending order by sum of 売上 」という選択肢が提案されるので、選択します。すると、売上の昇順にソートされた状態でグラフが表示されます。なお、日本語の変換の確定に改行キーを使うとそのまま問い合わせが実行されてしまうので、この場合の変換の確定にはESCキーを使います。
このように、すべての句を記憶していなくても、選択肢の候補をいくつか提案してくれるので、それに従う形で集計や可視化の切り口の指定を追加していくことが可能となっています。
さまざまな可視化。
Ask Dataで使用可能な句のリファレンスはUI上には存在しないので、Tableau Softwareのヘルプを参照する必要があります。現時点ではこちらのページに記載があります。
また「sum of 売上」などの指定済みの問い合わせ文にオンマウスすると、変更可能な項目がクリッカブル表示され、クリックすると選択肢の候補がドロップダウン表示されます。選択すると、問い合わせ文とビューの表示内容が変更されるので、この方法でもビューを操作することが可能であると同時に、このプロセスの中で使用可能な句を把握することができます。
これらを参考に、別の可視化にもトライしてみましょう。今までの問い合わせ文はいったんクリアするので、右上の[すべてクリア]ボタンをクリックします。
さきほどは売上の合計だったので、次は売上の平均を可視化します。平均には[average]句を使うので「average 売上」「by 都道府県」と入力します。すると、都道府県ごとの売上の平均が集計され、降順でソートされた状態で棒グラフが表示されます。この場合の平均とは顧客あたりの売上の平均であるため、合計では顧客数の多い大阪府や東京都が上位でしたが、平均では顧客数には依存しないため、富山県や岡山県が上位に上がってきます。
次は「TableauではじめるBI」でも作成した、月次の売上の推移を表現する時系列グラフを作成してみましょう。右上の[すべてクリア]ボタンをクリックし、新しい問い合わせ文を入力します。「オーダー日」を切り口とした売上の集計となるため「sum of 売上」「by オーダー日’s month」と入力します。実際には「by オーダー日」と打つと自動的に「by オーダー日’s year」となるので、「year」の部分をクリックして「month」に変更するような操作になるかと思います。これで月次の売上の推移を表現する折れ線グラフが表示されます。この場合、さきほどの都道府県ごとの売上のグラフの場合とは異なり、売上は自動的に縦軸に指定されます。またグラフには折れ線グラフが選定されますが、これはワークシートで作成した場合と同様です。このように、自然言語による問い合わせにより、さまざまなデータ可視化を実現できるわけです。
プログラミングによる可視化。
ここまで試しての率直な感想として、Ask Dataは、あくまで定型の構文に当てはめる記述となるため、つまりはプログラミングによるデータ可視化であるということです。今後は自然言語にもっと近い、あいまいな表現を許容する強化がなされる可能性はありますが、現時点ではそれ以上ではありません。とはいえ、プログラミングによるデータ可視化にはいくつかの特長があります。
- 共有しやすい。
- 再現性が高い。
- 慣れると速い。
ワークシートで作成した場合、可視化の結果を共有するにはワークシート自体を共有する必要がありますが、Ask Dataの場合は問い合わせ文を共有するだけです。
また、ワークシートで作成すると集計やフィルターの条件などがUIでの設定として扱われるため、ブラックボックス化しやすく、同じ条件での再現性が担保しづらいというデメリットがあります。一方で、Ask Dataの場合はすべて問い合わせ文として明記されるため、再現性を担保しやすいという特長があります。
さらに、ワークシートではドラッグ&ドロップが操作の基本であり、直感的に行えるというメリットがあるものの、習熟度が上がってもそれほど操作が速くならないというデメリットがあります。一方で、Ask Dataの場合は基本的にはキーのみによる操作であり、習熟することで操作が劇的に速くなるという特長があります。
これらはすべて、グラフィカルユーザーインターフェース(GUI)とコマンドラインインターフェース(CLI)の特徴の違いそのものと言えます。
また、言語であるならば音声入力に対応する可能性もあります。”Hi Tableau.” と言いながらグラフを作成する時代が来るかもしれませんね。
関連する記事
須川 敦史
UX&データスペシャリスト
クロスハック 代表 / uxmeetsdata.com 編集長