前回ようやくSQLデータベースからの複数データ系列の重ね合わせプロットができました。今回はちょいと処理を追加してみます。特定のデータ系列のプロット範囲での最大、最小の表示です。ただ数字だけを表示するのも寂しいので、ダッシュボード上にはゲージ表示としてみました。
ブロックを積みながら(109) Node-RED、複数データ系列の重ね合わせプロット
前回SQLiteデータベースの一部のフィールドにフォーマットのエラーがあったのをNode-REDフローから修正。これでようやく目論んでいた「複数データ系列の重ね合わせ」プロットができるというものです。Chart化をイネーブルにしたままデータベースへ複数回のQueryをかけるとそれぞれの系列を重ね合わせてくれるもの。 “ブロックを積みながら(109) Node-RED、複数データ系列の重ね合わせプロット” の続きを読む
ブロックを積みながら(108) Node-RED、データベース・フィールドのバグを修正
前回、集計対象のデバイスをmicro:bit V2からATOMLiteに変更しようとしてまさかの事態が発覚。ATOMLiteでデータベースに記録していたタイムスタンプのフォーマットがSQLite3の時間文字列フォーマットと異なってました。これでは期間を指定してデータを取り出したりできません。今回はフォーマットのFIX。
“ブロックを積みながら(108) Node-RED、データベース・フィールドのバグを修正” の続きを読む
ブロックを積みながら(107) Node-RED、SQLクエリの結果グラフ化その2
前回、過去データに対するSQLクエリの結果をグラフ化してみたのですが、狭い範囲の室温をグラフ化したので、スイッチがチャタリングでも起こしたような波形になってしまいました。その割にデータ点数多すぎ。今回は取り出したデータに「フィルタ」をかけても少し見やすくしてみます。 “ブロックを積みながら(107) Node-RED、SQLクエリの結果グラフ化その2” の続きを読む
ブロックを積みながら(106) Node-RED、SQLクエリの結果をグラフ化
前回までで過去データに対するSQLクエリの結果の表はできた感じ。今回からはそのグラフ化に進みたいと思います。PythonとかRでグラフ描こうかと思ったのですが、本シリーズの趣旨もあり、まずはNode-REDの中で「やっつけ」たいと思います。以前から使わせていただいておりますDashboardのchartノード再登場。
“ブロックを積みながら(106) Node-RED、SQLクエリの結果をグラフ化” の続きを読む
ブロックを積みながら(105) Node-RED、SQLクエリ・ダッシュボードの整理?
前回まででデータベースにSQLiteクエリを自在に投げられるようになったので(ホントか?)、今回はクエリ結果のデータのグラフ化と思ったのです。が、その前に散かってしまったダッシュボードを整理しておきたいです。また、クエリの成功の結果で空なのか、クエリ作成失敗の結果で空なのかも分かるようにしておきたいです。小ネタね。
ブロックを積みながら(104) Node-REDでSQLiteの練習その5
前回はタイムスタンプの一致を検出、特定日付のデータだけを抽出しました。でもね、日付といったら何時から何時までと指定するのが普通でしょう。今回は前回メンドイとか言ってとりつけなかった第2のdatepickerノードを設定、日付範囲でデータ抽出を行えるようにしてみます。これでようやくまともになった?
ブロックを積みながら(103) Node-REDでSQLiteの練習その4
前回「次回は、タイムスタンプでの絞り込みかね。」と呟いたので、そのとおりに日付でのデータ絞り込み機能を追加してみます。でもね現状はおおきく手抜きです。本当は前後日付時刻を指定してある期間を絞りこみするべきなのでしょうが、今回は日付選択1個のみ。二つにするのがメンドイので刻むことにいたしました。根性無だな、自分。
ブロックを積みながら(102) Node-REDでSQLiteの練習その3
前回、SQLiteデータベースからデータを抽出してテーブルに取り出せるようにしました。でも、ドロップダウンリストから選択すると即座に「その他の条件はキメウチ」のクエリが実行されてしまい、なんだかな~です。今回は前回の不満点を解消するために細かく手を入れてみました。本質一緒なのだけれどもフローはちょいと複雑になり。 “ブロックを積みながら(102) Node-REDでSQLiteの練習その3” の続きを読む
ブロックをつみながら(101) Node-REDでSQLiteの練習その2
前回SQLクエリの結果でドロップダウンリストを作ったので、今回は選択結果にもとづいてデータベースから実データを抽出してみたいと思います。古いデータなのですが、各種マイコンとセンサを使って取得した数万件くらいのデータです。とりあえずの今回はダッシュボードのテーブルに列挙してみます。 “ブロックをつみながら(101) Node-REDでSQLiteの練習その2” の続きを読む
ブロックを積みながら(100) Node-RED、SQLクエリの結果でドロップダウンリスト
前回SQLiteノードの練習だったので、今回もSQLと思ったのですが、その前に前回結果をドロップダウンリストにしておきたいと思います。SQLのクエリを組み立てるのにドロップダウンリストで検索条件など指定しておきたいので。前回クエリの結果をドロップダウンリストに流しこむのにJSONataでちょい変形。
“ブロックを積みながら(100) Node-RED、SQLクエリの結果でドロップダウンリスト” の続きを読む
ブロックを積みながら(99) Node-REDでSQLiteの練習その1
前回までJSONataの練習をしてましたが、今回からSQLiteノードを使ってデータベースへのアクセスの練習をしてみたいと思います。SQLiteノードは以前何度か使っており、SQLiteのDBもセットアップ済で常時稼働可能な状態です。しかし、忘却力の年寄は使い方忘れてしまいました。まずはテーブルを表示するところから。 “ブロックを積みながら(99) Node-REDでSQLiteの練習その1” の続きを読む
ブロックを積みながら(98) Node-REDでJSONataの練習その3
「JSONを制するものはNode-REDを制する」(誰が言ったんだ、そんなこと)ということでJSONオブジェクトを思うがままに操作するためのJSONataの練習の3回目です。今回はJSONの中から構造をもったデータを抽出して加工してみるの回。ぶっちゃけ大したことはしてないんだけれども。 “ブロックを積みながら(98) Node-REDでJSONataの練習その3” の続きを読む
ブロックを積みながら(97) Node-REDでJSONataの練習その2
JSONからのデータ抽出や変形に威力を発揮するJSONataの練習に戻ります。今回はJSONataの関数のうち数値データを処理するものを実験するつもりです。まずは一番やりたかったタイムスタンプ「数値」(Unix Epoch)からの変換機能を体験。タイムスタンプの各種変換はJSONataにお任せするのが正解?