schrodinger.seam.viz.render module¶
- class schrodinger.seam.viz.render.Styler(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
Bases:
object
- __init__(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
- style(transform_id: str, expanded_nodes: List[str]) str ¶
- class schrodinger.seam.viz.render.ColorByStatusStyler(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
Bases:
schrodinger.seam.viz.render.Styler
The nodes will be styled colored based on the inferred status of the transform (e.g. running, completed). The status is based on the stages that the transform has been seen in.
- __init__(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
- style(transform_id: str, expanded_nodes: List[str]) str ¶
- class schrodinger.seam.viz.render.ColorByStageStatusStyler(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
Bases:
schrodinger.seam.viz.render.Styler
- __init__(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
- style(transform_id: str, expanded_nodes: List[str]) str ¶
- class schrodinger.seam.viz.render.ColorByLicenseStyler(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
Bases:
schrodinger.seam.viz.render.Styler
Implements styling based on the licenses required by the transforms.
The style for a transform is determined by the licenses required by the transform and its subtransforms. The style is a striped rectangle with colors based on the licenses required by the transform. The colors are determined by a hash of the license id. If a transform requires multiple licenses, the colors are combined in a striped pattern.
- __init__(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
- style(transform_id: str, expanded_nodes) str ¶
- class schrodinger.seam.viz.render.ColorByTransformCPUTimeStyler(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
Bases:
schrodinger.seam.viz.render.Styler
- COLOR_GRADIENT = ['#B3E2BD', '#FFFFB3', '#FB8071']¶
- __init__(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
- style(transform_id: str, expanded_nodes: List[str]) str ¶
- class schrodinger.seam.viz.render.PipelineRenderer(pipeline_proto, options, expanded_nodes: Optional[List[str]] = None)¶
Bases:
apache_beam.runners.render.PipelineRenderer
A PipelineRenderer that has a few extensions from the base beam PipelineRender:
It can render a pipeline with a subset of the nodes expanded.
It can render a pipeline with custom node styles.
- The rendered graph is clickable and will call a javascript function
when a node is clicked.
Intended mostly for use with the seam watcher.
- __init__(pipeline_proto, options, expanded_nodes: Optional[List[str]] = None)¶
- setStyler(styler: schrodinger.seam.viz.render.Styler)¶
Sets a callback that will be called to get the style for a transform. The callback should take a transform id and return a string that will be used as the style for that transform.
- style(transform_id)¶
- transform_attributes(transform_id)¶
- to_dot()¶
- classmethod userPipelineFromSeamEvents(seam_events: typing.List[schrodinger.seam.runners.events.SeamEvent], expanded_nodes: typing.Optional[typing.List[str]] = None, styler_cls: schrodinger.seam.viz.render.Styler = <class 'schrodinger.seam.viz.render.ColorByStatusStyler'>) str ¶
Renders a pipeline from a list of seam events and returns the dot string. The pipeline will be rendered with the user labels as the nodes.
The rendered graph is clickable and will call a javascript function when a node is clicked.
- classmethod stagePipelineFromSeamEvents(seam_events: List[schrodinger.seam.runners.events.SeamEvent])¶
Renders a pipeline from a list of seam events. The pipeline will be rendered with the stage names as the nodes. The nodes will be colored based on the status of the stage (e.g. running, completed). The rendered graph