Skip to main content

Tools for manipulating Directed Acyclic Graphs in Python

Project description

Analyzing DAGs in Python

The dagtools package provides utilities for computing various graph-theoretic properties of DAGs (Directed Acyclic Graphs).

Graph Formats and Conversion

The dagtools package is familiar with the below graph formats, and can convert between any of them:

  • DOT Format
  • networkx.Graph and related subclasses

The example below shows how to convert a networkx Graph into a DOT formatted string using the dagtools.convert module. Note, the inverse operation is also available, via the convert.got_to_graph function.

>>> import networkx                   
>>> from dagtools import convert
>>> g = networkx.MultiGraph()
>>> g.add_nodes_from([1, 2, 3])
>>> g.add_edges_from([(1, 2), (1, 3)], key=0)
>>> print(convert.graph_to_dot(g))
graph  {
1;
2;
3;
1 -- 2  [key=0];
1 -- 3  [key=0];
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dagtools-0.0.2.tar.gz (2.4 kB view hashes)

Uploaded Source

Built Distribution

dagtools-0.0.2-py3-none-any.whl (4.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page