特にHome Assistantの場合は、SQLiteデータベースに接続し、独自のグラフ作成ソフトウェア(またはスクリプト)を使用してカスタムグラフを生成できます。ホームアシスタントのブログは、とのPythonの使用を示してmatplotlibのこれを行うには:
# Adapted from the linked code from Home Assistant.
import sqlite3
from matplotlib import dates
import matplotlib.pyplot as plt
import homeassistant.util.dt as dt
ENTITY_ID = 'entity id here'
START_DATE = 'date here'
END_DATE = 'date here'
values = []
timestamps = []
conn = sqlite3.connect('/home/ha/.homeassistant/home-assistant_v2.db')
data = conn.execute("SELECT state, last_changed FROM states WHERE entity_id = {} AND last_changed BETWEEN {} AND {}".format(ENTITY_ID, START_DATE, END_DATE))
for x in data:
timestamps.append(dates.date2num(dt.parse_datetime(x[1])))
values.append(float(x[0]))
plt.plot_date(x=timestamps, y=values, fmt="r-")
plt.ylabel('Value')
plt.xlabel('Time line')
plt.savefig('sensor.png')
データベーススキーマはここから入手できます。私たちが興味を持っているのは、状態オブジェクトです。entity_id
興味のあるデバイスを知っている必要があります。
Pythonに精通している場合は、比較的簡単に適応でき、GUIまたはより優れたコマンドラインインターフェイスを追加することもできます。ただし、SQLiteデータベースにクエリを実行できる言語であれば問題なく動作します。
または、CSVにエクスポートしてスプレッドシートプログラムを使用することを検討することもできます。これは自動化するのがより困難になることは間違いありませんが、プログラマーでない場合はよりユーザーフレンドリーになる可能性があります。