35 lines
934 B
Python
35 lines
934 B
Python
from datetime import date
|
|
|
|
import streamlit as st
|
|
|
|
from data_processing import filter_by_date, hourly_average, load_data
|
|
|
|
st.set_page_config(page_title="Glucose dashboard", page_icon="📊", layout="centered")
|
|
|
|
st.title("Glucose per uur")
|
|
|
|
df = load_data()
|
|
|
|
min_date = df["timestamp"].dt.date.min() if not df.empty else date.today()
|
|
max_date = df["timestamp"].dt.date.max() if not df.empty else date.today()
|
|
|
|
selected_date = st.date_input(
|
|
"Kies een datum",
|
|
value=max_date,
|
|
min_value=min_date,
|
|
max_value=max_date,
|
|
)
|
|
|
|
day_data = filter_by_date(df, selected_date)
|
|
|
|
if day_data.empty:
|
|
st.info("Geen metingen gevonden voor deze datum.")
|
|
else:
|
|
hourly = hourly_average(day_data)
|
|
st.bar_chart(
|
|
hourly.set_index("hour")["glucose_value"],
|
|
x_label="Uur van de dag",
|
|
y_label="Gemiddelde glucosewaarde",
|
|
)
|
|
st.caption(f"{len(day_data)} metingen op {selected_date.strftime('%d-%m-%Y')}")
|