Pygraphv
Pygraphv - python library for generating dot programming language for creating graphviz graphs from python OO style code.
Examples
Basic graph:
from pygraphv.graph import Graph
from pygraphv.node import Node
from pygraphv.style import GraphStyle
# Chose one of this
# You can look at difference in Graphviz docs
# digraph = Digraph("Digraph")
graph = Graph("Graph")
# Adds node with name A, that has child node B
a = Node("A")
graph.add_node(a)
graph.add_node(Node("B"), parent=a)
# Generates .dot file for your graph and saves it in "Your first graph.dot"
# And renders it to svg file, needs dot compiler installed and added to path
graph.render("Your first graph")
Styles:
from pygraphv.graph import Digraph
from pygraphv.style import *
from pygraphv.node import Node
# Now digraph example
# Only difference to regular graph is arrows at ends of connections
graph = Digraph("Graph", styles=[GraphStyle(bgcolor="lightblue"), GraphStyle(href="github.com/farkon00")])
# Adds node with name A, that has child node B
a = Node("A", styles=NodeStyle(color="red", shape="box"))
graph.add_node(a)
graph.add_node(Node("B"), label="Styled edge", parent=a, styles=EdgeStyle(arrowhead="box"))
# Generates .dot file for your graph and saves it in "Styles.dot"
# And renders it to svg file, needs dot compiler installed and added to path
graph.render("Styles")
Clusters:
from pygraphv.graph import Graph, Cluster
from pygraphv.style import *
from pygraphv.node import Node
graph = Graph("Graph")
# Adds node with name A, that has child node B
a = Node("A")
graph.add_node(a)
graph.add_node(Node("B"), parent=a)
# Creates cluster and adds cycle of 3 nodes, connected to node A
# Can be compressed to one style object
# But you can use GraphStyle on clusters
cluster = Cluster("Cluster", styles=(GraphStyle(bgcolor="lightgreen"), ClusterStyle(style="dotted")))
node1 = Node("1")
cluster.add_node(node1)
a.children.append(node1)
cluster.add_node(Node("2"), parent=node1)
cluster.add_node(Node("3"), parent=node1)
graph.add_node(node1.children[-1].node, parent=node1.children[-2].node)
graph.add_subgraph(cluster)
# Generates .dot file for your graph and saves it in "Clusters.dot"
# And renders it to svg file, needs dot compiler installed and added to path
graph.render("Clusters")
Metadata
Release files for pygraphv 0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pygraphv-0.2.tar.gz | 7.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pygraphv-0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.6 kB
Release files / pygraphv-0.2.tar.gz
| Download URL | pygraphv-0.2.tar.gz |
|---|---|
| Size | 7.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
95f2fa3419d995ef43e470e303f7e364656a40cca22de4bfa540733bad95d4bf
|
|
BLAKE2b-256 checksum How to use checksums |
4a4952b89147047f0b78030dfecca2309447c17669b8863fe3d6bf6564d56efc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.3
|
Release files / pygraphv-0.2-py3-none-any.whl
| Download URL | pygraphv-0.2-py3-none-any.whl |
|---|---|
| Size | 7.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6edb31e4609ed6864d88640e0bff24075a9baf3bbb0c7fc11e9ebfe22aad1fdf
|
|
BLAKE2b-256 checksum How to use checksums |
55f3b1d33c3338faf34476fa5a0c2b3db4a84e9657e4e5d618c3389e0df4538f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.3
|