plot_topology#

popo.plotting.network.plot_topology(topology, root='sourcebus', title='Network topology', figsize=None, node_radius=11.0, low=0.94, high=1.1, near_margin=0.02, limits=None, orientation='vertical', ax=None)#

Draw a network as a schematic icon diagram, buses coloured by voltage status.

Discs, glyphs and labels are all sized in points, as fixed ratios of node_radius, so the diagram reads the same at any figure size; only bus positions are in data units.

Parameters:
  • topology (NetworkTopology) – The network, e.g. from topology_from_dss().

  • root (str) – The source bus the tree is laid out from.

  • title (str) – Axes title.

  • figsize (tuple[float, float] | None) – Figure size, used only when ax is not given. By default it is sized from the tree, so labels of neighbouring buses do not collide.

  • node_radius (float) – Bus disc radius in points.

  • low (float) – Lower statutory limit in pu.

  • high (float) – Upper statutory limit in pu.

  • near_margin (float) – Distance inside a limit, in pu, that counts as “near”.

  • limits (VoltageLimits | None) – A popo.standards.VoltageLimits whose band overrides low/high.

  • orientation (Literal['vertical', 'horizontal']) – "vertical" (source at top) or "horizontal" (source on the left, for a wide, shallow feeder).

  • ax (Axes | None) – Axes to draw into; a new figure is created when omitted.

Return type:

Figure

Returns:

The figure drawn into.