# Julia Set: Animate your own in Python with Matplotlib

An Infinity within infinity. That's how we can describe the bizarre fractal geometry. This geometry is defined by a self-similar symmetry that exhibits the same or similar patterns regardless of the scale at which we zoom over.

We already covered the fascinating properties of the
Mandelbrot set and the
Koch Curve, which
are also fractals. In this post, we make an animated visualization of the
Julia Set, which is
a special kind of fractal. We implement the numerical simulation using *Python* augmented with an animated
visualization in *Matplotlib*.

## Definition

Similar to the *Mandelbrot Set*, the *Julia Set* is a set of all complex numbers \( z \) for a given
\( c = x + i*y \), such that the sequence \( z_{n+1} = z_{n}^{2} + c \) is bounded. We can easily visualize all such
complex numbers in the complex plane and get a stunning plot. All we have to do is to associate a color (from a predefined
palette of colors), corresponding to the number of steps before the sequence diverges. If it diverges, the color is set
to black.

## Animated Visualization

The number \( c = x + i*y \) gives us the freedom to set it to a range of values and produce mind-blowing animations. We get one particular and very interesting range of values if we represent \( c \) as \( c = r\cos\alpha + i * r \sin\alpha = re^{i * \alpha} \), for \( r = 0.7885 \) and \( \alpha \in [0, 2\pi] \).

Using *Matplotlib's* Animation API, we visualize the convergence of the *Julia Set* over this interesting
range of values for \( c \). This is depicted in the animation below:

The source code behind this animation and simulation can be found in this Python Notebook.

If this illustration of the *Julia Set* is interesting to you, feel free to share it on the social media.
Also, it would help if you subscribe to the mailing list below. You will get cool animations like this one from time to time.
Thanks for reading this article!

## Leave a comment