Skip to content

Arc Diagram

Draw an arc diagram from named DataFrame edge columns (#743).

Arc Diagram

Usage

from dataviz import arc_diagram
from dataviz import save

def main() raises:
    # Illustrative calls between services during a checkout request.
    # Edge weights are average calls per minute at peak traffic.
    var caller: List[String] = [
        "Gateway", "Gateway", "Checkout", "Checkout", "Checkout",
        "Catalog", "Catalog", "Payments", "Orders", "Orders",
        "Identity", "Notifications",
    ]
    var dependency: List[String] = [
        "Identity", "Catalog", "Identity", "Catalog", "Payments",
        "Inventory", "Search", "Fraud", "Inventory", "Notifications",
        "Fraud", "Identity",
    ]
    var calls_per_minute: List[Float64] = [
        820.0, 760.0, 410.0, 395.0, 370.0, 640.0,
        510.0, 350.0, 330.0, 290.0, 180.0, 120.0,
    ]

    var c = arc_diagram(
        caller,
        dependency,
        calls_per_minute,
        title="Illustrative Checkout Service Dependencies",
    )
    save(c, "docs/src/examples/out_arc_diagram.svg")

See Data shapes for shared input conventions.

Args:

  • df: The frame containing one row per edge.
  • from_categories: Source node column.
  • to_categories: Destination node column.
  • values: Edge magnitude column.
  • theme: Plot styling and missing-value policy.
  • width: Plot width in pixels.
  • height: Plot height in pixels.
  • title: Chart title.
  • subtitle: Secondary title.
  • x_title: Horizontal axis title.
  • y_title: Vertical axis title.

Related

Related charts: Chord · Graph

Relevant API: arc_diagram