fix(gui): percentili Calibrazione in riga compatta, no truncation
I valori percentili (es. -0.0298, 0.05323) renderizzati come ``st.metric`` su 7 colonne venivano tagliati su viewport stretti: ogni metric ha label sopra, font fisso, nessun shrink. Sostituito con render markdown inline a font 0.85rem, single-line, scrollabile orizzontalmente se serve. Tutti e 7 i percentili visibili senza troncamento e senza wrap. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -167,9 +167,21 @@ def _percentiles_strip(s: pd.Series) -> None:
|
||||
st.caption("(nessun dato)")
|
||||
return
|
||||
quantiles = [0.05, 0.10, 0.25, 0.50, 0.75, 0.90, 0.95]
|
||||
cols = st.columns(len(quantiles))
|
||||
for col, q in zip(cols, quantiles, strict=False):
|
||||
col.metric(f"P{int(q * 100)}", f"{s.quantile(q):.4g}")
|
||||
# Inline markdown compatto: i valori a 4 cifre significative
|
||||
# cadono regolarmente fuori dalla colonna se renderizzati con
|
||||
# ``st.metric`` (font fisso, label sopra, no shrink). Render
|
||||
# orizzontale con font ridotto evita il troncamento.
|
||||
parts = [
|
||||
f"<b>P{int(q * 100)}</b> {s.quantile(q):.4g}"
|
||||
for q in quantiles
|
||||
]
|
||||
html = (
|
||||
"<div style='font-size:0.85rem;line-height:1.5;"
|
||||
"white-space:nowrap;overflow-x:auto;'>"
|
||||
+ " · ".join(parts)
|
||||
+ "</div>"
|
||||
)
|
||||
st.markdown(html, unsafe_allow_html=True)
|
||||
|
||||
|
||||
def _render_metric(spec: MetricSpec, records: list[MarketSnapshotRecord]) -> None:
|
||||
|
||||
Reference in New Issue
Block a user