Skip to content

tdfs4ds.scheduling.viz

tdfs4ds.scheduling.viz

Interactive workflow visualisation for a parallel-execution plan (v0.3.1.147).

plot_workflow_pyvis renders the process DAG of an :func:tdfs4ds.analyze_parallel_plan result as a wave-layered pyvis network: every process node is placed in a band by its wave index (vis.js hierarchical layout, level = wave), so processes in the same band run in parallel and dependency edges run band → band (sequential). This makes "what is parallel vs sequential" visually unambiguous — the exact question the admin "Execution plan" panel answers.

Mirrors :func:tdfs4ds.lineage.lineage_store.plot_lineage_pyvis (lazy pyvis import, self-contained HTML written to output_path).

_WAVE_COLORS module-attribute

_WAVE_COLORS = ['#1f4e79', '#2e75b6', '#2f9e44', '#e8590c', '#9c36b5', '#0b7285', '#c2255c', '#5c940d', '#845ef7', '#d9480f']

logger_safe

logger_safe(level, message, *args, **kwargs)

Wrapper around the global logger that only emits logs when tdfs4ds.DISPLAY_LOGS is True. level is a string like "info", "error", etc.

plot_workflow_pyvis

plot_workflow_pyvis(plan: Dict[str, Any], *, output_path: str = 'tdfs4ds_workflow.html', height: str = '750px', width: str = '100%', notebook: bool = False)

Render plan (from :func:analyze_parallel_plan) as an interactive, wave-layered pyvis network and write a self-contained HTML file.

Returns the configured pyvis.network.Network.

_short_label

_short_label(view_name: str) -> str

Bare object name (strip db + quotes) for a compact node label.

_legend_html

_legend_html(n_waves: int) -> str