Sort visualizer through Python with PyQt5 GUI
- Visualizes different sorts
- Can generate random array of numbers
- Can generate descending array of numbers
- Has a speed slider to change how fast/slow the sorting and generating goes
- More Python practice.
- PyQt5 for GUI.
- QtDesigner.
- General GUI design ideas.
- Better understanding of sorting algorithms.
- Some CSS.
I've been wanting to make this project for a long time now and tried to dip my feet into the world of GUI building. I first started with Tkinter for python and managed to visualize two sorts. The issue with the way I did was that it didn't have any user input at all and the sorts would visualize one after the other. It also pre-generated a random array whenever it starts and would just exit once it's done sorting. I tried a different approach by using PyQt for GUI which allowed me to use QtDesigner in order to design and flesh out the GUI then I just programmed the wanted behavior afterwards. I learned a lot about what goes into building GUIs and things that came with it such as signals from user input. I also learned a little CSS in order to make the progress bars look the way I wanted to. PyQt5 also has a visual glitch when it comes with progressbars where it will leave artifacts when updated constantly, a workaround for this is switching to a different window then back to the sorting visualizer to fully see the outcome.
v3
v2
v1