22 lines
506 B
Python
22 lines
506 B
Python
|
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")
|