def __edge_tooltip()

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)