Skip to main content

The ultimate Python toolkit for animating Data Structures and Algorithms.

Project description

vizods

Python Version License: MIT Build Status Visualizer Last Commit Repo Size

vizods is a powerful Python library that bridges the gap between abstract code and visual understanding. Transform your algorithms and data structures into high-quality .mp4 animations and .png snapshots with a single line of code.


Key Features

  • Intuitive Visualization: Automatically generate animations for sorting, trees, and graphs.
  • Smart Structure Support: Specialized layouts for Linked Lists and Binary Search Trees.
  • Pathfinding Tracing: Step-by-step visualization of Dijkstra’s algorithm with weight tracking.
  • Customizable: Add your own logic and let vizods handle the rendering.

Installation

pip install vizods

Note: Ensure you have ffmpeg installed for video rendering.


Usage Examples

1. Binary Search Tree (BST)

from vizods.bst import BST

tree = BST()
for val in [50, 30, 70, 20, 40]:
    tree.insert(val)

tree.save_video("tree_growth.mp4")
tree.save_snapshot("final_tree.png")

2. Dijkstra's Algorithm

from vizods.dijkstra import Dijkstra

graph = Dijkstra()
graph.add_edge('A', 'B', 4)
graph.add_edge('B', 'C', 2)
graph.visualize_search(start_node='A', target_node='C')
graph.save_video("pathfinding.mp4")

Supported Modules

Category Modules Visual Style
Sorting Bubble, Quick, Merge, Insertion, Selection Bar Charts
Data Structures Linked List, BST Nodes & Pointers
Pathfinding Dijkstra Weighted Graphs

Visualization Standards

  • 🟢 Green: Sorted / Visited Node.
  • 🟠 Orange: Active / Currently Processing.
  • 🔴 Red: Shortest Path / Deleting Node.
  • 🔵 Skyblue: Standard Node / Unvisited.

Contributing

Contributions are what make the open-source community an amazing place to learn!

  1. Fork the Project.
  2. Create your Feature Branch (git checkout -b feature/NewAlgo).
  3. Commit your Changes.
  4. Push to the Branch.
  5. Open a Pull Request.

License

Distributed under the MIT License. See LICENSE for more information.

Developed with ❤️ by Mordekai66

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

vizods-2.1.0.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vizods-2.1.0-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file vizods-2.1.0.tar.gz.

File metadata

  • Download URL: vizods-2.1.0.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vizods-2.1.0.tar.gz
Algorithm Hash digest
SHA256 2a5961b411187f53fec311553b7b0cb9f7db1facfa76c15eab47ad8be16dd040
MD5 198cb0665b9dac2bb2fd2d2a34e6b97f
BLAKE2b-256 2dc4dcbcdcbc2e3257f8219977c61e08eb6d0d3272603e44622d7b470d3ea450

See more details on using hashes here.

File details

Details for the file vizods-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: vizods-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for vizods-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b80379423bd11ea939cefe762776c84403a6d9de8a66e49e24f1d56865cdde3c
MD5 e51ebb2f8dfc8af914fa957b453b71cd
BLAKE2b-256 2cb11dfdf54ba58c5cc2012fb967411a805e18de114995ffeed0a9fd6359b3af

See more details on using hashes here.

Supported by

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