Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
Masaki_Hamano
Employee
Employee

 

はじめに

ここでは、RangeSum関数を使って以下の様な形の累積グラフを作成する方法をご紹介します。

 

準備

このエントリでは、「前月比や前年比、成長率などの算出-Above, Before」と「移動期間合計や移動期間平均の算出–RangeSum, RangeAvg」のエントリでご紹介したAbove関数とRangeSum関数を利用しますので、そちらをまだ読まれていない方はまずそちらをご参照ください。

サンプルデータを利用して、ご説明する操作を実際に試して頂くことができます。以下のリンクからサンプルデータをダウンロードし、ダウンロードしたZIPファイルを任意の場所に解凍してください。

>>サンプルデータ(店舗売上分析データ)のダウンロード

そして、新規アプリを作成してダウンロードしたZIPファイルに含まれるファイルを取り込んでください。

 

累積グラフの表示

移動期間合計や移動期間平均の算出–RangeSum, RangeAvg」のエントリでは過去12ヶ月分の売上を表示するために以下の形でRangeSumとAboveを利用しました。

RangeSum(Above(Sum([売上]),0,12))

 

上記Above関数の引数の「0」は自分自身のレコードを示しており、自分自身のレコードを含めて2つ目の引数に指定されている「12」個分上の範囲に位置するSum([売上])の集計値(つまり過去12カ月分の集計値)を合計するということを行っていました。

今回の累積グラフも以下の形で基本的に同じ手法を取りますが、一か所だけRowNo()の関数を利用している部分が異なります。

RangeSum(Above(Sum([売上]),0,RowNo()))

 

RowNo()は以下の形でレコードの行数を返しますが、この関数を先ほどの「12」の代わりに指定しています。そうすると、例えば10行目では10個分、20行目では20個分上の範囲に位置する集計値を合計するということになりますので、1行目からの全ての値を合計するということを行う形となります。

image-117.png

 

2軸を利用する場合等の注意点

軸の絞り込みや、2軸での対応については「移動期間合計や移動期間平均の算出–RangeSum, RangeAvg」のエントリでご説明したものと同じことがここでも適用されます。

一点注意が必要なのは、2軸を利用して以下の形で「年」を跨いで集計するためにTotalを利用する場合、RowNo(Total)という形でRowNo()の中にもTotalを指定する必要があります。

RangeSum(Above(Total Sum({$<年月>}[売上]),0,RowNo(Total)))

image-118.png

 

まとめ

以上、Qlik Senseで累積グラフを作成する方法をご紹介しました。