Info
A Clifford attractor plotted by iterating 2 equations across 10 million steps.
DrawButterfly
Computer Experiments
Data Visualization
Interactive Tool
A seeker of absolute truths, I am continually charmed by the butterfly effect. In fact, I find their drawings equally beautiful as the theories themselves. Sadly, it seems that most drawings of chaotic systems are drawn in static forms (2D or 3D). I felt it would be more beautiful, more compelling, and more mathematically interesting to extend the idea by introducing a component of time. Time tells greater truths!
I ran a computer experiment to test if I could create a procedural rendering system built with p5.js. I wrote a Python algorithm with NumPy and Matplotlib to animate chaotic attractors across 300 frames. The animation was possible by introducing time as a variable. Afterwards, I built a user interface in Javascript to deploy my algorithm as an interactive tool. The tool is now publicly accessible and users can adjust parameters to generate new visual outcomes in real time.
Lorenz's first graphical representation of the butterfly attractor (1963).
The 3D character of the butterfly is animated with modern plotting abilities. Nonlinear equations were applied iteratively to thousands of points to generate chaotic attractors. I designed a path through parameter space to animate the evolution of these mathematical structures across 300 frames using a Marimo notebook.
Interactive Tool
The final visualization was deployed with JavaScript and the model was transformed into an accessible interactive experience. Users can adjust the parameters and observe that each adjustment produces a new visual outcome as the system evolves. All changes are rendered and reproduced in real time.
By allowing audiences to interact with the equations, experiment with parameters, and create their own visualizations, DrawButterfly transforms chaos theory into an evolving process of discovery and invites anyone, anywhere, to engage with mathematics creatively.