Skip to main content

Python library for creating graphs, trees, and gemini structures.

Project description

EasyGraphLib

This is a simple package for working with graphs in Python 3.

Tasks:

  • Add weighted graph.
  • Add unweighted graph.
  • Add tree's.

"class weighted_graph" methods:

  • add_node("node name", "connect or connections", "values for con/con's") - This method create Node with connections, and Nodes for connections.

  • add_connections("node name", "connection or connections", "values for con/con's") - This method adding connections to Node, and create new Nodes for connections.

  • update_connection("node name", "connection", "value") - This method update weight for connection.

  • remove_node("node name") - Remove node with connections.

  • remove_connection("node name", "connection") - Remove connection from node.

  • compile_graph() - Compile EasyGraphLib struct.

  • find_tnw_d("EasyGraphLib struct") - Dijkstra algorythm.

    import easygraphlib as egl
    
    wg = egl.weighted_graph()
    
    wg.add_node("start", ("a", "b"), (6,2))
    wg.add_connections("start", ("c"), (3))
    wg.add_connections("c", ("a", "fin"), (2, 2))
    wg.add_connections("a", ("fin"), (3))
    wg.add_connections("b", ("a", "fin"), (3, 5))
    wg.update_connection("start", "c", (4))
    wg.update_connection("a", ("fin"), (1))
    
    input_graph = wg.compile_graph()
    print(input_graph)
    

"class unweighted_graph" methods:

  • add_node("node name", "value", "connections", "auto create node flag True/False") - This method create Node with connections, and Nodes for connections.

  • add_connections("node name", "connection or connections", "auto create node flag True/False") - This method adding connections to Node, and create new Nodes for connections.

  • update_value("node name", "value") - Update value for Node.

  • remove_node("node name") - Remove node with connections.

  • remove_connection("node name", "connection") - remove connection from node.

  • get_graph()

  • wide_search("node name", "value", "condition")

    import easygraphlib as egl
    
    uwg = egl.unweighted_graph()
    
    uwg.add_node("me", False, ("Patrick", "Carry", "Josh"))
    uwg.add_node("Joseph", False, ("Lora"))
    uwg.add_connections("Patrick", ("Henry", "July", "me"))
    
    print(uwg.get_graph())
    
    uwg.add_connections("me", ("Henry", "Harry"))
    uwg.add_connections("Patrick", "Henry")
    print(uwg.get_graph())
    

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

EasyGraphLib-0.3.5.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

EasyGraphLib-0.3.5-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file EasyGraphLib-0.3.5.tar.gz.

File metadata

  • Download URL: EasyGraphLib-0.3.5.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.5

File hashes

Hashes for EasyGraphLib-0.3.5.tar.gz
Algorithm Hash digest
SHA256 78d7db90723d453a2ccae6bef83933b20de48fc75e76b55dc16d4f9ee46522c3
MD5 352402851e4f0e01eb72b6bb8c1ded7b
BLAKE2b-256 5ccc68680aaec55c36577a5e75d4c288cd61cf2f5bbfe807d20d65d7baaa09a5

See more details on using hashes here.

File details

Details for the file EasyGraphLib-0.3.5-py3-none-any.whl.

File metadata

  • Download URL: EasyGraphLib-0.3.5-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/39.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.5

File hashes

Hashes for EasyGraphLib-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 184c7e72e15aa1341cca096b8339bac98d200da0aa0ec9bc3d20952b0606fe47
MD5 904d6b12cbebca06df745ce8becde565
BLAKE2b-256 2245137562f13a1f1a4e7ed6a791b90a7d32f697591de1e6ab7b2b26d2fdd5d9

See more details on using hashes here.

Supported by

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