データの可視化(Firebase)
enebularのInfoMotion機能を使うことによって、データを可視化できます。
このチュートリアルでは、「アセットをインポートし、Firebaseに保存したデータをInfoMotionで可視化する」ということを行います。(所要時間50分)
Table of Contents
フローのインポート
enebularのユーザーはアセットを公開すること、また公開されているアセットをインポートできます。
公開されているフローをインポートする手順を説明します。
右上にあるDiscover Assets
をクリックしてください。
アセットの種類はフロー
を選択し、getting-started
と検索バーに入力してください。
検索結果からenebularのラベルが表示されているフローをクリックすると詳細画面が表示されるので、インポート
ボタンをクリックしてフローをインポートします。
インポート先の適当なプロジェクトにデフォルトの権限設定(編集、デプロイ、公開
)でインポートしてください。
インポートしたプロジェクトのダッシュボードに新しくアセットが追加されています。
インポートしたフローを開いて、同じフローがインポートされていることを確認してください。
このフローはそれぞれのデータソースの認証情報がブランクになっているので、デプロイする前にフローを編集する必要があります。
データソースの作成
InfoMotionは現在、下記のリアルタイムデータベースに対応しています。詳しくは各ページを参照してください。
このチュートリアルではFirebaseを用いて説明を進めます。
次の項へ進む前に、Firebaseのページを参考にして、利用登録を済ませ、データストアを作成してください。
※ チュートリアルでの設定はテストに向けたものなので、実際に使用する際には推奨しません。
※ 2023/8に、enebularのデータストア機能に格納されたデータをInfoMotionで可視化できるようになりました。詳細についてはデータの可視化(データストア)のページを参照ください。
Flowの編集とデプロイ
データベースの認証情報をフローに入力し、デプロイをします。
今回はFirebaseのノードのみに認証情報を入力します。
秘密鍵の取得
Firebaseのページで設定したアプリのコンソールを開いておきます。
歯車アイコンからプロジェクトを設定
を選択し、サービスアカウント
タブを選択します。
Firebase Admin SDK欄から、databaseURLにある値をメモしておき、新しい秘密鍵の生成
をクリックします。JSONファイルがダウンロードされます。
取得した秘密鍵のファイルをテキストエディターなどで開いておきます。
ノードの編集
フロー編集画面から、Firebaseノード
をクリックし編集画面を開きます。さらに、Firebaseの欄右にある鉛筆アイコンをクリックします。
Firebase欄にメモしておいたdatabaseURLから、アプリ名のみを入力します。
AuthTypeはJSON Web Tokenを選択します。
Client EmailとPrivate Key欄が表示されるので、開いておいた秘密鍵のファイルからprivate_key
とclient_email
の値をコピーして貼り付けます。
追加
ボタンをクリックしてAdd Firebaseノードの編集画面に戻り、Firebaseプロパティ欄のリストからFirebaseのURLを選択します。
Child Pathにtest
を入力し、MethodはPush
を選択します。
Data欄に以下のコードをコピーして貼り付け、完了
ボタンをクリックします。
{"id":"msg.payload","name":"msg.payload.value"}
ノードの設定値を更新したら、画面右上の保存
ボタンをクリックします。
デプロイ後、画面右のデバッグメッセージ
タブを開いてください。
デバッグログが毎10秒で更新されます(間隔についてはinjectノードで定義しています)。
デバッグログのイメージです。
InfoMotionを使うにはこのようなデータがプッシュされているデータストアを用意する必要があります。
*注 1: enebularのエディター上で動作するフローはアクセスがないと自動的に4時間でセッションタイムアウトになります。
*注 2: 4時間を超えるとデプロイができません。ページを更新して再度デプロイしてください。
データソースの登録
次に、作業しているプロジェクトにデータソースを登録します。
プロジェクトのダッシュボードの左のメニューからデータソース
を選択して、+
ボタンをクリックしてください。
名称に任意の名称を入力し、DataSourceTypeからFirebase
を選択してください。データソースの設定画面が開きます。
必要な値を得るために、Firebaseの管理画面へ移動し、歯車アイコンからプロジェクトを設定
を選択後、全般
タブを開きます。
マイアプリ欄で、作成したアプリ名のFirebase SDK snippet
に記載されているスクリプトを参照し、以下の項目に対応する値をデータソースの設定画面に入力し、保存
ボタンをクリックしてください。
※Database URL
は、秘密鍵の取得
の作業でメモしておいた内容を入力します。
- Api Key
- Auth Domain
- Database URL
- Project Id
- Storage Bucket
- Messaging Sender Id
Ref
にはフロー作成の際に用いたChild path
を入力します。(Firebaseではコレクション名となっています。)Ref
の設定値には/(スラッシュ)
が前方に必要なので「/test」としてください。Limit
はデフォルトのままで構いません。
これでデータソースの設定ができたので、InfoMotionを使用する準備ができました。
InfoType のインポート
enebularのユーザーはアセットを公開すること、また公開されているアセットをインポートできます。
公開されているInfoTypeをインポートする手順を説明します。
右上にあるDiscover Assets
をクリックしてください。
アセットの種類はInfoTypeを選択し、bar-chart
と検索バーに入力してください。
検索結果に出てきたenebularラベルのあるものをクリックし、下記のようなプレビューは表示されていることを確認してください。
右の インポート
ボタンよりフローをインポートできます。
インポートするプロジェクトを選択し、インポート
ボタンをクリックしてください。
プロジェクトのダッシュボードから、インポートしたInfoTypeが追加されていることを確認してください。
InfoMotion の作成
これまでに追加したデータソースとInfoTypeを使用してInfoMotionを作成します。
左メニューからInfoMotion
を選択し、ページ右下の+
ボタンをクリックして、ダイアログを開きます。
任意の名前を入力し、権限はデフォルトのままにしておきます。
作成後、InfoMotionのダッシュボードを開きます。
画面上部の「グラフの管理」を選択してサイドバーを開いてください。ここではダッシュボードに追加されたグラフを見ることができます。
今は何も追加していない状態なので、何も表示されていません。
グラフの作成
をクリックして、作成モーダルを開きます。
デフォルトで先ほど追加した、項目がそれぞれ入力されています。
labelは category
と入力してください。グラフのX軸に対応します。
Valueは value
と入力してください。グラフのY軸に対応します。
任意の名前を付けて 保存
のボタンを押してください。
付けた名前のグラフがリストに追加されていることを確認してください。
名前の左にある追加
ボタンをクリックするとダッシュボードにグラフが追加されます。
グラフが表示されない場合は、選択している時間範囲が適切でないかもしれません。右上の日付の項目からデータが保存されている時間を設定してください。
グラフの右下をドラッグすることによって、グラフのリサイズが可能です。グラフ上部のレイアウトの保存
をクリックしてレイアウトを保存できます。
Well Done!
データフローの作成から、Firebaseに保存したデータをInfoMotionで可視化するまでのチュートリアルが終わりました。
このチュートリアルでは、用意されているサンプルの棒グラフを表示していますが、ユーザー独自のInfoTypeを作成し使用することもできます。
詳しくは、 InfoMotion Type Creation Tutorialを参照してください。