INPUTしたらOUTPUT!

忘れっぽいんでメモっとく

RでSony Lifelog APIを叩く(3/3) ダッシュボードの作成

Lifelog アプリでは1日毎の睡眠ログや歩数、消費カロリーは見れるけどトレンドは見れない。 以前から気になっていたflexdashboardパッケージで以下のようなダッシュボードにしてみた。
(13時間寝てる日は入浴時に外して朝まで気づかなかったケースかな。。。)

My Lifelog Stats

f:id:tak95:20160713200806p:plain:w400


highcharterによる2軸グラフの作成

ggplot2などでは難しい2軸グラフがhighcharterだと簡単にできたのでコードだけメモしとく。
なおhighcharterパッケージはCRANからインストールすると

関数 "hc_yAxis_multiples" を見つけることができませんでした 

とエラーになるのでdevtools::install_github("jbkunst/highcharter")でインストールする。


以下は2軸グラフを描くRコード。

library(highcharter)
highchart() %>%
  hc_legend(enabled = FALSE) %>%
  hc_xAxis(as.character(df$date)) %>%
  hc_yAxis_multiples(
    list(
      title = list(text = "Sleeping Time"),
      align = "left",
      showFirstLabel = FALSE,
      showLastLabel = FALSE
      ),
    list(
      title = list(text = "Deep Sleep Rate"),
      aligh = "right",
      showFirstLabel = FALSE,
      showLastLabel = FALSE,
      opposite = TRUE
      )
    ) %>%
  hc_add_series(name = "Sleeping Time", type = "column",
                data = df$sleeping_time) %>%
  hc_add_series(name = "Deep Sleep Rate", type = "spline",
                data = df$deep_sleep_rate, yAxis = 1)



  • それっぽいのができたのでcronで毎日更新させよう。
  • smartbandの電池切れでログを取得できていない日があるのでbotで監視したい。