その他お問い合わせ先

lodestar@truestar.co.jp

運営会社

株式会社truestar
truestar activation株式会社

時系列を付与した散布図の作り方

稀に使用される「時間を軸においていない散布図に折れ線で時系列を追加したグラフ」を作成してみます。

一見して判りにくいグラフとなる為汎用性は低いですが、2軸の指標に対して年を追った傾向を見る際に役立ちます。

 

サンプルデータソースの「世界指標」を使用して生産人口割合とGDPの関係をあらわしたダッシュボードを作成して見ました。 ポイントは折れ線のパスに「年」を入れる部分です。 素直に実装すると年の進行方向が判りにくかったため、矢印を入れています。 if last()=0 then “終点” elseif  lookup(AVG([人口(15~64歳)]),1)-AVG([人口(15~64歳)]) > 0  and lookup(AVG([GDP]),1)-AVG([GDP]) > 0 then “右上” elseif lookup(AVG([人口(15~64歳)]),1)-AVG([人口(15~64歳)]) > 0 then “右下” elseif lookup(AVG([GDP]),1)-AVG([GDP]) > 0 then “左上” else “左下” END

非常にシンプルな実装となっていますので興味がある方はダウンロードして確認してみてください。

var divElement = document.getElementById(‘viz1480306039280’); var vizElement = divElement.getElementsByTagName(‘object’)[0]; vizElement.style.width=’1004px’;vizElement.style.height=’869px’; var scriptElement = document.createElement(‘script’); scriptElement.src = ‘https://public.tableau.com/javascripts/api/viz_v1.js’; vizElement.parentNode.insertBefore(scriptElement, vizElement);

続きを読む 時系列を付与した散布図の作り方

フィルタを使用する際のシェアの算出方法について

製品やブランドのシェアを算出するケースは非常に多いと思います。

今回はフィルタを使用する際のシェアの算出方法についてお話します。

使用するデータソースは「スーパーストア」です。

 

シェアを算出する際は「sum([売上])/WINDOW_SUM(sum(売上))」といった形で「対象/全体」を計算しますね。

全ての対象を表示している場合は問題ないですが、表示するメーカーは絞る(or一つにする)際のシェア算出方法が課題となります。

素直にフィルタで絞ってしまうと、絞った中でのシェアを表示してしまいます。

カテゴリごとのシェアを表示するといった際はいいのですが、メーカーを絞る際は問題となります。

これはディメンションフィルタでフィルタされた後に表計算が行われるため発生します。

(Tableau online Helpより)

詳しい内容はTableau online Helpを参照してください。(https://onlinehelp.tableau.com/current/pro/desktop/ja-jp/calculations_calculatedfields_lod_filters.html)

解決策は以下の3種類が考えられます。

・個々のレコードにトータルの値を持たせる

・フィルタを表計算フィルタにする

・トータル計算にFixedを使用する

各々について見ていきましょう

 

・個々のレコードにトータルの値を持たせる

予めデータ側にトータルの値を持たせてしまって、フィルタが掛かっても算出できるようにします。

「sum([売上])/avg(トータル売上)」

メリット

・表計算なしで算出できる為、軽い

デメリット

・フィルタを掛けても一切トータルの値が動かない為、どの単位でトータルを持たせるかが問題となる

・単純にAVGで計算できなくなるケースもあり、データの準備、扱い共に難易度が高い

 

・フィルタを表計算フィルタにする

表計算フィルタは表計算が行われた後に実行されるため、フィルタを表計算を使用したものに変更すれば正しく表示されます。

lookup(min([メーカー]),0)

といった計算式を作成しフィルタに入れます。

メーカーをビューに入れないと動作しない点に注意が必要です。

メリット

・手軽

デメリット

・アクションフィルタには適用できない

・表計算フィルタは実際には非表示にしているだけであるため、重い

・表計算フィルタである為、フィルタを表示する為にも表計算が行われる(重くなる)

・フィルタ対象をビューに使用しなければならない

・複数ワークシートへの適用が出来ない

 

・トータル計算にFixedを使用する

Fixedはディメンションフィルタの前に計算される為、トータル計算にFixedを使用すれば正しく表示されます。

「sum([売上])/sum({fixed:sum(売上)})」

メリット

・Fixedの計算を調整することで要件に柔軟に対応可能

デメリット

・Fixedはビュー表示とは別に計算が行われるため、重い

・Fixedの計算の調整が必要

 

続きを読む フィルタを使用する際のシェアの算出方法について