Skip to main content

A Python library for visualizing Data Structures and Algorithms with images and videos

Project description

vizods

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

vizods is a comprehensive Python library that combines robust Data Structures and Algorithms with built-in visualization tools. It allows developers and students to not only execute code but also see how data transforms in real-time through images and videos.


Key Features

  • Built-in Visualization: Generate .png snapshots or .mp4 videos of algorithm execution.
  • Educational Legends: Every visual output includes a color-coded legend and status messages.
  • Clean API: Intuitive syntax designed for both production and learning.
  • Extensible Architecture: Easily add new algorithms by inheriting from our base visualizer classes.

Installation

pip install vizods

Note: Ensure you have ffmpeg installed on your system for video rendering.


Quick Start: Bubble Sort Visualization

from vizods.bubble_sort import BubbleSort

# Initialize with data
data = [64, 34, 25, 12, 22, 11, 90]
sorter = BubbleSort(data)

# Run algorithm with visualization enabled
sorter.sort()

# Export results
sorter.save_snapshot("final_result.png")
sorter.save_video("bubble_sort_demo.mp4", fps=5)

Supported Modules

1. Sorting Algorithms

Algorithm Status Visualization
Bubble Sort Bar Chart + Legend
Selection Sort Bar Chart + Legend
Insertion Sort Bar Chart + Legend
Quick Sort Pivot Tracking
Merge Sort Sub-array Merging

2. Data Structures (Coming Soon)

  • Linked Lists: Animated pointer manipulation and node traversal.
  • Binary Trees: Visual tree rebalancing (AVL/BST).
  • Graphs: Pathfinding visualization (Dijkstra, BFS, DFS).

3. Pathfinding

  • A Search:* Grid-based visualization.
  • Dijkstra: Weighted graph traversal animations.

Visualization Standards

To ensure a consistent learning experience, vizods follows a strict color-coding system:

  • 🟢 Green: Sorted / Finalized / Target Reached.
  • 🟠 Orange: Currently being processed / Compared.
  • 🔴 Red: Highlighted element / Error / Key being moved.
  • 🟣 Purple: Pivot point (for Divide & Conquer).
  • Gray: Inactive / Out of scope.

Contributing

We welcome contributions! If you'd like to add a new algorithm or improve a visualizer:

  1. Fork the Project.
  2. Create your Feature Branch.
  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 ❤️ for the Developer Community.

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.0.0.tar.gz (8.0 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.0.0-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vizods-2.0.0.tar.gz
Algorithm Hash digest
SHA256 e60ad2498aeeca44f1c2761a42ec51be45fe54375d287995c9683eb8fe99dc4d
MD5 1a38bb868a46a48d152d8a2825f32a13
BLAKE2b-256 8474221b3d3667b042374a6cbf0fbb97afa00eaa17bd5d9a115214b5579c81c2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vizods-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 9.4 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.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b6df444232711c066bcb75aa923bc198daa3d7f0dd9371ee57cabead560e24c4
MD5 7867bbb9a5f4059e3c06a5be30ec6e7c
BLAKE2b-256 a547fd0e3e6759e3b6afad4d85ae1eb55123feec95ba3a1e516da86823e94146

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