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-1.0.4.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-1.0.4-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vizods-1.0.4.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-1.0.4.tar.gz
Algorithm Hash digest
SHA256 9ded31cc12662e601a74b7b3fd9e5048778692485905e407c654d9df03a02ed0
MD5 f90d22135253a4e22999ebced87e9fc6
BLAKE2b-256 6a8160ace6c3c823b4004cf00996f6a4e3f0abeb153f3515992130eda198f4c6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vizods-1.0.4-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-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 4e9e7c3171a343a6d60dae5db8d4d10c0df40ec5edd392063ea8b9637ea6dcb3
MD5 76494f135ac25090b9d5a95a67e849de
BLAKE2b-256 24078ac0e1a48155f209714355311029873ebf78e6a2ea1dda158efc1bc58e12

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