"""UI logic for the "Estadístiques" page.""" from __future__ import annotations import pandas as pd import streamlit as st from database import get_feedback_ad_stats def render_statistics_page() -> None: st.header("Estadístiques") stats = get_feedback_ad_stats() if not stats: st.caption("Encara no hi ha valoracions.") st.stop() df = pd.DataFrame(stats, columns=stats[0].keys()) ordre = st.radio( "Ordre de rànquing", ["Descendent (millors primer)", "Ascendent (pitjors primer)"], horizontal=True, ) if ordre.startswith("Asc"): df = df.sort_values("avg_global", ascending=True) else: df = df.sort_values("avg_global", ascending=False) st.subheader("Rànquing de vídeos") st.dataframe( df[ [ "video_name", "n", "avg_global", "avg_transcripcio", "avg_identificacio", "avg_localitzacions", "avg_activitats", "avg_narracions", "avg_expressivitat", ] ], use_container_width=True, )