2014/09/27

室温モニタ

結局こんな感じに落ち着いた。

image

グラフ表示部に Google Charts の Annotated Time Line、カレンダー部に jQuery UI の datepicker を使ってみた。

Daily モードにすると、選択した日の 1 分刻みのデータをプロットして、Monthly モードにすると、その月のデータを 1 時間刻みでプロットするかんじ。

Monthly のデータの取り出しには

$targetDateString = $date->format("Y-m");
$daysInTheMonth = $date->format("t");

$query = "select
            date_format(ts, '%Y/%m/%d %H:00:00') as ts,
            avg(temp) as temp
          from sensor_db.room_temperature
          where ts between str_to_date('$targetDateString-01 00-00-00', '%Y-%m-%d %H-%i-%s') and
                           str_to_date('$targetDateString-$daysInTheMonth 23-59-59', '%Y-%m-%d %H-%i-%s')
          group by date_format(ts, '%Y-%m-%d-%H');";

こんな感じのクエリを使ってみた。

なかなか楽しい。

0 件のコメント:

コメントを投稿