in playground/process_analysis/status_transition_graph_vistualizer.py [0:0]
def __edge_tooltip(self, from_state: str, to_state: str, durations: list[float]) -> str:
lines = []
lines.append(f"{from_state} ⮕ {to_state} ({len(durations)}x)")
lines.append(f"avg: {statistics.mean(durations):0.1f} days")
lines.append(f"med: {statistics.median(durations):0.1f} days")
if len(durations) >= 4:
quantiles = statistics.quantiles(durations, n=4)
lines.append(f"IQR (25-75%): {quantiles[0]:0.1f} - {quantiles[2]:0.1f} days")
if len(durations) >= 2:
lines.append(f"min-max: {min(durations):0.1f} - {max(durations):0.1f} days")
return "\n".join(lines)