diff --git a/display/generate_html.py b/display/generate_html.py new file mode 100644 index 0000000..2d2c533 --- /dev/null +++ b/display/generate_html.py @@ -0,0 +1,21 @@ +import sqlite3 +import pandas as pd +import plotly.express as px + +TABLE_NAME = "stats" + +INTERVAL = 20 # on cron interval is 10min + + +# Create your connection. +cnx = sqlite3.connect('data.sqlite') + +df = pd.read_sql_query(f"SELECT * FROM {TABLE_NAME}", cnx) +df = df.set_index("date") +df = df[::INTERVAL] +print(f"Find {len(df)} items") + + +fig = px.area(df, title="Wide-Form Input") +fig.for_each_trace(lambda trace: trace.update(fillcolor = trace.line.color)) +fig.write_html("stats.html", include_plotlyjs="cdn") diff --git a/display/requirements.txt b/display/requirements.txt index d11ec07..a0a9f33 100644 --- a/display/requirements.txt +++ b/display/requirements.txt @@ -1,5 +1,5 @@ - +plotly pygal