はじめに

QlikViewでは、2つのチャートを作成してそれぞれに異なるフィルタ条件を適用し、比較分析を行うための「並列ステート」という機能を持っています。Qlik Senseでは標準機能としてこの並列ステートをGUI上で利用が出来ないのですが、内部的には機能を持っていてAPIは提供されています。

image

Qlik Branch (Qlik Branchについてはこちらを参照)ではこのAPIを利用して並列ステートを利用するためのQlik Senseエクステンションが公開されており、ここではその利用方法について解説したいと思います。

事前の準備

このエントリでは、「10分で試すQLIK SENSEでデータ分析」の手順に従ってQlik Sense Desktopのインストールが完了しており、そこで作成した「売上分析」アプリを使って解説を行います。もし作業をまだ実施されていなければ、以下のリンク先の手順に従って作業を実施して下さい。

>>「10分で試すQLIK SENSEでデータ分析」

また、以下の2つのエクステンションをダウンロードし、ダウンロードしたZipファイルを解凍してフォルダを「C:\Users\%username%\Documents\Qlik\Sense\Extensions」にコピーしてエクステンションをQlik Senseに追加します。

>>Alternate states for Qlik Sense

>>Alternate states aware listbox for Qlik Sense

エクステンション追加の手順詳細についてはここを参照して下さい。

並列ステートの利用

ステートの追加

アプリを開いて新たなシートを作成し、編集モードを有効にしてチャート一覧から「Alternate States」をシートに追加します。

image

「完了」をクリックして編集を完了します。

image

追加した「Alternate States」の入力ボックスに「StateA」と入力し、「Add」をクリックします。

image

同様の手順で入力ボックスに「StateB」と入力し、「Add」をクリックします。

image

プルダウンをクリックして2つのステートが追加されたことを確認します。

image

並列ステートのリストボックス追加

編集モードに入り、「Alt State Listbox」を追加します。

image

「軸を追加」をクリックして「商品カテゴリ」を選択します。

image

右側のプロパティの「Custom properties」>「State」から「StateA」を選択します。

image

同様の手順で「Alt State Listbox」をもう一つ追加し、今度は「State」から「StateB」を選択します。

image

チャートの追加

棒グラフを一つ目のリストボックスの横に追加し、「軸を追加」をクリックして「商品名」を選択します。

image

「メジャーを追加」をクリックし、「数式エディタを開く」のアイコンをクリックします。

image

以下の数式を入力して「適用」をクリックします。{[StateA]}はSET分析の式となっており、StateAの状態のみをSum([販売価格])の集計に適用するよう指定しています。

Sum({[StateA]}[販売価格])

image

同様に棒グラフを二つ目のリストボックスの横に追加し、「軸を追加」をクリックして「商品名」を選択します。

image

以下の数式のメジャーを追加します。

Sum({[StateB]}[販売価格])

image

「完了」をクリックし、追加した2つのリストボックス項目でそれぞれ異なった選択すると、対応するチャートにはそれぞれの絞り込み条件に従った集計結果が表示されることを確認します。

image

まとめ

以上、Qlik Senseで並列ステートを利用する方法をご説明しました。この並列ステートを利用することで、Qlik Senseでも複数のチャートに異なるフィルタ条件を適用する比較分析を行うことができます。