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 py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page