📈

SORACOM Lagoonのデータを平滑化する

2023/04/04に公開

やりたいこと

SORACOM Harvest DataのデータをSORACOM Lagoonで可視化する時
こういうジャミジャミのデータを

移動平均で平滑化する

ただしデータソースはいじりたくないのでLagoonの機能だけで実現する

準備(前提)

  1. SORACOM Harvest Dataにデータを貯める
    https://users.soracom.io/ja-jp/docs/harvest/send-data/
    ※まだデータがない場合はデモデータが使えるので必須ではない

  2. SORACOM Lagoon "v2" の利用を開始する
    https://users.soracom.io/ja-jp/docs/lagoon-v2/getting-started/
    ※FreeプランでもOKです

手順

  1. パネルを追加

  2. Add an empty panel(左上)を選択

  3. PanelタブのVisualizationはGraph(デフォルト)

  4. Queryタブで平滑化したい(ジャミジャミの)データを選択

    Demoのtemperatureは程よくジャミっていて、こんな感じになります。

  5. Expressionを追加します

    ※Warningの通り "Experimental feature: queries could stop working in next version"です。

  6. Operation でResampleを追加します。

  7. inputに "A"(先ほど追加したジャミジャミのデータ)を選択

  8. 平滑化のパラメータを選択します
     Resample to: 今回は移動平均の平均時間を設定します。
      ex.) 3m(3分の移動平均), 10m(10分の移動平均)
     Downsample: 今回は移動平均をしたいので "Mean" を設定します。
     Upsample:切れ目なく描画できるので、"backfilling"を設定します。(移動平均時間ぶんのデータが足りない分の端っこをどう処理するか)

設定例

編集したら目のボタンを2回クリックすると変更が反映される

こうなります。

仕上げ(蛇足)

  1. グラフの系列名がBになっちゃっているので上書きする
    鉛筆ボタンをクリックして

    直接編集("smoothed"にする)

    編集したら目のボタンを2回クリックすると変更が反映される

  2. 平滑化したグラフは線の下を半透明の色でfillしなくていいので外す(お好みで)
    Panelタブをぐりぐりやって下へ移動し



    "Series orverrides"を見つけて開く

  3. 開いたらAlias or regexにsmoothed(追加したExpression)を選ぶ

  4. "+"をクリックして

  5. Line fillを0に

平滑化したグラフオレンジ半透明の塗りつぶしが消えます。

  1. これだと線が細いので太くします
    先ほどの設定に追加してLine Widthを調整します

太くなりました

1. 太くした線の色を変えたい場合はここで

同系色にするとオシャレです

QA

csvで平滑化したデータを取り出せるのか?

取り出せます。
パネルタイトル横の下向きのくの字をクリックして、「inspect」→「Data」

「Data options」を開いて、show data frameのプルダウンでsmoothedを選択して水色のDownload CSVボタンをクリックします。

Discussion