Python Instrument Panel(8)操作説明ーグラフ
Androidアプリ「GUI Maker for ESP8266 & ESP32 – Python Inst. Panel」のグラフ描画アイテム、PlotView の説明です。
2017/10/15 追記:横軸時刻のグラフに変更しました。
をタップして編集モードにします。
をタップして新規パネルを追加します。PlotViewアイテムのIndexは7です。
をタップして実行モードにします。
先ずは、ExecCodeアイテムを使って説明します。スクリプト完成後にTimerアイテムのScriptプロパティに入力します。
ExecCodeアイテムにPythonコードを入力してAndroidの入力画面を閉じると、入力したコードが実行されます。
ExecCodeアイテムのPythonコードを次のように書き換えてAndroidの入力画面を閉じます。
Items[7].AddData(10) Items[7].AddData(30) Items[7].AddData(20) Items[7].Invalidate()
次に、Pythonコードを実行するたびに1つデータを追加して、データが11個になるときは一番古いデータを削除してから追加するように書き換えます。ダミーデータとして現在時刻の秒を追加します。横軸に時間を表示するために AddData(DateTime.Now, dummyData) のようにダミーデータと一緒に現在時刻も渡します。
if Items[7].DataCount > 10: Items[7].RemoveData() dummyData = DateTime.Now.Second Items[7].AddData(DateTime.Now, dummyData) Items[7].Invalidate()
横軸を時刻にするため、Panel setup scriptでPloyViewのStringFormatプロパティをセットします。
横軸が時刻になりました。
完成したPythonコードをTimerアイテムのScriptプロパティに入力します。
をタップして編集モードにし、TimerアイテムのScriptプロパティに入力します。データ数の上限を10から100に変更します。Valueプロパティを1にしてTimerを有効にします。Intervalプロパティを0.1にします。
をタップして実行モードにします。
次に、TimerをOn/OffするButtonと、グラフをクリアするButtonを追加します。
をタップして編集モードにします。Index 2のInputFieldアイテムのItemTypeをButtonに変更します。
Index 1のButtonアイテムのTextプロパティを”Start/Stop”に、Index 2のButtonアイテムのTextプロパティを”Clear”に変更します。
Index 1のButtonアイテムのScriptプロパティ:
if Items[6].Value == 0: Items[7].ClearData() Items[7].Invalidate() Items[6].Value = 1 else: Items[6].Value = 0
Index 2のButtonアイテムのScriptプロパティ:
Items[7].ClearData() Items[7].Invalidate()
使わないアイテムを削除して完成です。