2016年さくら開花日を大予想!?RUNNING_SUMと予想を使ってみる

2016/03/03 18:51 Unknown 2 Comments

みなさんこんにちは!いろんなユーザーでログインしてブログ上で書いた人がわかる機能があることにようやく気付きましたKaoriです。わお!
Nanaeさんとちがって不精すぎて申し訳ない感じになってきました(←)
ダッシュボードの連載途中でほっぽらかしてますが、忘れたわけじゃないですよう。あれって労力遣う内容なので思いつきでちょっと軽いやつ書いてみました。
シーズンモノってことでさくら開花予想です!

昨年Tableauに入社する前に社内認定試験用に作っていたVizがさくらの開花日と満開日についてのネタだったのですが、(去年のはこちら→「お花見に行こう!」)
そこで2月1日からの最高気温累計600℃に到達するとさくらが開花、開花してから7日程度で満開、という結果が出ましたので、今年のさくら開花日をTableauを使って大予想してみました!!!



見たい内容をまとめただけなのですっごいそっけないVizですが・・・
あまりにも地味だったので背景変えたりアイコン入れたりしてます(笑)

今回のVizのポイントは3点。


①予想の累計表示
②累計600℃を超えた最初の1日目だけラベルを出す
③宙に浮いた他Vizへのリンク

1個ずつ解説していきます!


①予想の累計表示
予想の累計って出せるのかしら・・そういえばやったことなかったな、、、
と思ってやってみたんですが、案の定表計算が入っている数字に対して予想を入れることはできませんでした。。。
予想がグレーアウトして使えなくなってます。


Oh no!!
予想の計算式とかいじれるなら自前でいじっちゃえるかなと思ったんですが、予想は普通の計算式とは違い、自分でTableau上でこの計算を作ることはできないようです。むむむ。
しかしここであきらめるのもな、、と思い、
エクスポートすりゃいいじゃん!!ということに思い至ります。
ついついなんでもひとつのデータでやろうとしてしまいますが、違うところにあるデータを簡単にもってくることができるのもTableauの素敵な魅力のひとつ。
これを使いましょう。

ということで、累計を入れていない普通の気温推移で予想を算出し、データをエクスポートしてそのままつないじゃいます。


「エクスポート後に接続」のチェックを入れておくとそのままつないでくれるので超便利です。
こういう使い方も想定してるんでしょうね。
というわけで、晴れて普通のデータとして予想値を取り込みましたので、こいつで累計を出しました。
どこからが予想だかわかりやすくするためにリファレンスラインで予想が始まる日にちを区切ったりしてます。(一番上の画像参照)


②累計600℃を超えた最初の1日目だけラベルを出す

お次はコレです!!
実は去年のVizではこのやり方が思いつかず、選択されたものだけラベルを出す、というオプションで、600℃を超えたところを手動で選択していたのでした。。
去年よりレベルアップしてるはずだし、なんとか自動的に出したい!!ということでやってみました。

自分ではすぐにできない計算式を作るときどうするかというと、

まずは落ち着きます。

(笑)

これに尽きます。

で、次、できるだけ条件をバラバラにできないか考えます。
バラバラにしたら、1個ずつクリアしていきます。
まとめてやろうとするとこんがらがってきてうまくできません。

では今回の条件。

1.累計600℃を超えている日付だったらラベルを出す
2.1日前が累計600℃を超えていたらラベルは出さない

この2つです。
1は簡単にできます。(これは去年も色分けでやってた)
簡易表計算で累計に設定したピルをダブルクリックしたら累計の計算式が出てきちゃいます。




1から書く手間が省けますのでこれを拝借しちゃいましょう!!
コピペして書き加え、こんな感じの計算式を作ります。

IF RUNNING_SUM(SUM([最高気温(℃) (合計)]))>=600 then MIN([年月日]) END

累計600℃を超えたら年月日を出す、という計算式ですね。
これでラベルを書くとこんな感じになります。



あと一歩って感じですね。
600℃を超えたところから毎日日付が表示されます。

2の条件をつけるためには、この日を超えてから番号を振り、1の時しか出さなければできるんじゃね?!
と思ったので試してみました。
二つの計算式で実装しています。



600℃を超えたら1をつけ、それをまた累計にすれば2度目以降は2, 3, 4 ... と増えていくはずなのでOKかな!!というところでできました!!

なんか微妙に効率悪いような気もするんですがとりあえずできたので今日はこんな感じで・・
最初RUNNING_MAXを使ってみたりとかPREVIOUS_VALUEとかでいけないかなとかガタガタやってみたんですが失敗してンギャーってなったのでやめましたw
PREVIOUS_VALUEはまだ使いこなせてないなあ・・いつか極めてやりたいです!!

もっと効率よい計算式思いついた方いらっしゃいましたらコメント待ってます♡


③宙に浮いた他Vizへのリンク

というわけで最後のトピックです。
こいつは全然大したことないやつです(笑)

文字からリンクを入れたいなっていうときに、データに依存しないただの文字ならテキストを使いたいところなんですが、残念ながらアクションはシートからしかかけることができないんですね・・・



ダッシュボードオブジェクトの内のシート以外の項目たちは、別にデータソースを見に行っているわけではないのでこういうことができないわけです。
同じ理由でインタラクティブなタイトルもダッシュボードのタイトルだと作れないので、シートをタイトル用に作ったりすることもあります。

というわけで、リンクさせるためのシートを作りました。



文字もベタうちですw
共有データソースとして使わせるようなものだったら絶対入れたくないですが、今回はこれだすためだけのデータだからいっか、ということで割り切り。
こいつを使ってURLアクションを作成しました。
今回は別に条件で分岐する必要もないのでリンクしたいURLをシンプルに入力しただけです。


というわけでダッシュボードが完成しました!!

もうすぐお花見~~楽しみですね!!



Kaori

2 件のコメント:

  1. Kaori san,

    えらく遅くなってからですけど、>600度 の日の計算式の話です。
    running_sumのFieldを作った後は、いかのような式で一発で指定可能です。
    if [runsum]>=600 and lookup([runsum],-1) <600 then attr([Date]) END
    ファイル見てみたんですけど、ワークシートをデータベースとして使ってあるんで、関係性を解析しきれませんでした。。
    お花見、この時期はすご~く、うらやましいです。

    返信削除
  2. おおおおお!!これだとめちゃくちゃシンプルになりますね!!!素晴らしい!!
    勉強になりました。ありがとうございます♪

    返信削除