Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Ochanoko
Creator
Creator

Qlik Sense 横に並んでいる項目を棒チャートで積み上げる方法

お世話になります。

以下の様なデータがあるとします。
Load * Inline
[
年月,タイプ,カウント,費用合計,費用1,費用2,費用3
202101,A,1,300,100,100,100
202101,A,0,400,200,100,100
202102,B,0,600,100,300,200
202103,C,1,500,300,100,100
];

棒グラフチャートを作成し、軸に「年月」を、棒の長さに「費用合計」を設定することにより
年月ごとの費用が確認できますが、ここからさらに費用の内訳を確認出来るように
年月ごとに「費用1」「費用2」「費用3」を積み上げた棒グラフにしたいです。

実現する方法としてデータロード時にCrosstable()の使用を考えましたが、
Crosstable(費用タイプ,費用,4)を実行した場合、一つだったデータが三つに分かれることになるので、
集計を行う場合は、次の様なSET修飾子が必用になります。 {<費用タイプ={'費用1'}>}
集計を行う場所すべてにこれを設定するのが非常に手間なので、もっと良い方法が無いか模索しましたが、見つかりませんでした。
もし良い方法をご存じの方おられましたら、ご教授いただけますと幸いです。

1 Solution

Accepted Solutions
hka
Employee
Employee

方法としては2つあります。

1つ目は

そのまま取り込んで軸を年月、メジャーをsum(費用1)、sum(費用2)、sum(費用3)と3つ作成します。

プロパティのプレゼンテーションで積み上げにするとできます。

 

2つ目は

CrossTableに変更して

軸に年月、費用タイプの2つを設定して数式にSum(費用)にし、

プロパティのプレゼンテーションで積み上げにするとできます。

 

どちらにするかは管理のしやすさで判断頂ければと思います。

費用タイプの種類が多い場合はCrossTableの方が良いです。

基本的に合計値は算出できるので、費用合計の項目はいらないです。

View solution in original post

3 Replies
Yuki_Suzuki
Employee
Employee

棒チャートに積み上げ表示をするだけでしたら、お考えの通り、Crosstable(費用タイプ,費用,4)を行ってデータを分割し、棒チャートの2軸目に費用タイプを指定し、スタイルで積み上げを指定すればいいだけですね。

集計を行うすべての場所でSet修飾子を設定するのは確かに手間ですが、マスターアイテムに登録することで多少は軽減できるのではと思います。最新バージョンではマスターアイテムをそのまま数式に使用することができますので、例えば

Sum({<費用タイプ={'費用1'}>} [費用]) 
費用1としてマスターアイテムのメジャーに登録しておくと、チャートの数式欄に

=費用1/sum(費用)

のような式を書くことができます。

hka
Employee
Employee

方法としては2つあります。

1つ目は

そのまま取り込んで軸を年月、メジャーをsum(費用1)、sum(費用2)、sum(費用3)と3つ作成します。

プロパティのプレゼンテーションで積み上げにするとできます。

 

2つ目は

CrossTableに変更して

軸に年月、費用タイプの2つを設定して数式にSum(費用)にし、

プロパティのプレゼンテーションで積み上げにするとできます。

 

どちらにするかは管理のしやすさで判断頂ければと思います。

費用タイプの種類が多い場合はCrossTableの方が良いです。

基本的に合計値は算出できるので、費用合計の項目はいらないです。

Ochanoko
Creator
Creator
Author

今回はHkaさんの一つ目の方法で対応しようと思います。

お二人とも、回答頂きありがとうございました。