pm4py.visualization.ocel.ocpn.variants.brachmann module#
- pm4py.visualization.ocel.ocpn.variants.brachmann.ot_to_color(ot: str) str[source]#
Generates a deterministic hex color based on the object type string.
- pm4py.visualization.ocel.ocpn.variants.brachmann.generate_dummy_id() str[source]#
Generates a unique ID for a dummy node.
- pm4py.visualization.ocel.ocpn.variants.brachmann.generate_arc_id(source_id: str, target_id: str) str[source]#
Generates a unique ID for an arc.
- pm4py.visualization.ocel.ocpn.variants.brachmann.get_neighbors(vertex_id: str, layout_data: Dict, direction: str) List[str][source]#
Gets upper (‘up’) or lower (‘down’) neighbors of a vertex.
- pm4py.visualization.ocel.ocpn.variants.brachmann.get_arcs_between(u: str, v: str, layout_data: Dict) List[Dict][source]#
Gets arcs connecting vertex u and vertex v directly.
- pm4py.visualization.ocel.ocpn.variants.brachmann.get_arcs_between_layers(layer_idx1: int, layer_idx2: int, layout_data: Dict) List[Dict][source]#
Gets all arcs connecting nodes between two specific layers.
- pm4py.visualization.ocel.ocpn.variants.brachmann.is_incident_to_inner_segment(ocpn_layout: Dict, vertex_id: str) bool[source]#
Checks if a vertex is a dummy node connected to another dummy node above it.
- class pm4py.visualization.ocel.ocpn.variants.brachmann.OCPNGraph(layout_data: Dict)[source]#
Bases:
objectHelper class to represent the graph for cycle breaking and layer assignment.
- class pm4py.visualization.ocel.ocpn.variants.brachmann.Parameters(*values)[source]#
Bases:
EnumParameters for the Sugiyama OCPN visualization
- FORMAT = 'format'#
- BGCOLOR = 'bgcolor'#
- RANKDIR = 'rankdir'#
- ENGINE = 'engine'#
- ENABLE_GRAPH_TITLE = 'enable_graph_title'#
- GRAPH_TITLE = 'graph_title'#
- SOURCES = 'sources'#
- SINKS = 'sinks'#
- VERTEX_SEP = 'vertex_sep'#
- LAYER_SEP = 'layer_sep'#
- EDGE_SEP = 'edge_sep'#
- BORDER_PADDING = 'border_padding'#
- OBJECT_CENTRALITY = 'object_centrality'#
- OBJECT_ATTRACTION = 'object_attraction'#
- OBJECT_ATTRACTION_RANGE_MIN = 'object_attraction_range_min'#
- OBJECT_ATTRACTION_RANGE_MAX = 'object_attraction_range_max'#
- MAX_BARYCENTER_ITERATIONS = 'max_barycenter_iterations'#
- PLACE_RADIUS = 'place_radius'#
- TRANSITION_WIDTH = 'transition_width'#
- TRANSITION_HEIGHT = 'transition_height'#
- SILENT_TRANSITION_WIDTH = 'silent_transition_width'#
- ARC_SIZE = 'arc_size'#
- ARROWHEAD_SIZE = 'arrowhead_size'#
- INDICATE_ARC_WEIGHT = 'indicate_arc_weight'#
- INDICATE_VARIABLE_ARCS = 'indicate_variable_arcs'#
- VARIABLE_ARC_INDICATOR_COLOR = 'variable_arc_indicator_color'#
- VARIABLE_ARC_INDICATOR_SIZE = 'variable_arc_indicator_size'#
- TRANSITION_COLOR = 'transition_color'#
- TRANSITION_FILL_COLOR = 'transition_fill_color'#
- TRANSITION_TEXT_COLOR = 'transition_text_color'#
- DEFAULT_PLACE_COLOR = 'default_place_color'#
- ARC_DEFAULT_COLOR = 'arc_default_color'#
- TYPE_COLOR_MAPPING = 'type_color_mapping'#
- FONT_NAME = 'font_name'#
- FONT_SIZE = 'font_size'#
- pm4py.visualization.ocel.ocpn.variants.brachmann.apply(ocpn: Dict[str, Any], parameters: Dict[Any, Any] | None = None) Digraph[source]#
Obtains a visualization of the provided object-centric Petri net using a Sugiyama-based layout algorithm.
- Args:
ocpn (Dict[str, Any]): Object-centric Petri net structure. parameters (Optional[Dict[Any, Any]], optional): Algorithm parameters.
- Returns:
Digraph: A Graphviz digraph object representing the layout.