はてなグラフで時刻データをプロットする方法

はてなグラフは便利なのでよく使うのだが、時刻データをグラフ化したい場合には少々工夫が必要になる。

毎朝の起床時刻を記録していき、グラフにしたい場合を例に説明しよう。

はてなグラフでは、データとして「7:30」のような値を書き込むと自動的に「7.50」に変換する機能がある。30分は0.5時間だから7時半は7.50時となるわけだ。
さすがによくできているのだが、「7:40」や「7:55」を入力すると「7.67」や「7.92」のような小数になり、ぱっと見て何時何分のことなのかわからなくなってしまう。
何時に起きたのかを後から確認したい場合には適さない。

直感的な入力方式を採る

そこで、「7:30」の場合は「7.30」、「7:55」なら「7.55」という風に入力することにする。これならぱっと見て時刻がわかる。
その上で、この独自方式の数値をはてなグラフの数式機能を利用して変換し、グラフ化してやる。

時刻をプロットするための数式

さて具体的な手順だが、データ入力用のグラフと、グラフ表示用のグラフの2つのグラフをつくる。
ここではデータを入力するグラフを「wakeup」、表示用のグラフを「wakeup_graph」と名付けることにする。wakeup の方には毎日起きた時刻を「7.40」のような小数値として入力していく。wakeup_graph の方は数式を設定すると自動的に値が入るため、数値を編集することはできない。

wakeup_graph の方に設定する数式は以下の通り。

TRUNCATE([wakeup],0)+([wakeup]-TRUNCATE([wakeup],0))*100/60

やっていることは簡単で、整数部分と小数部分を分けてから変換しているだけ。


出来上がったグラフはこんな感じになる。

wakeup_graph