Mandelbrot set and Julia sets
an applet made by António Miguel de Campos (Portugal)

Start by clicking in a point in screen - you see the evolution (the orbits) resulting from the iteration of zn+1= zn2+c, 50 times, using that point as c, and z0=0. Each point zn+1 is shown in yellow and is connected to the previous point zn by a red line.

Press and drag the mouse to select an area for zooming, and then press c.

If you click keys 1 through 7 - you see some selected details in the Mandelbrot set.

The key z makes «zoom in» and Z «zoom out» by a factor of 2, to the full window. Use UPand DOWN keyboard keys to change the number of iterations (counter cnt -shown at right in window) and then press the c key to have more detail when zoom is large. If you press u, i, o or p , you can see the different coloring possibilities. Use LEFT and RIGHT - keyboard keys to change the «color number» (cor -shown at right in window) and then press the c . (Colors used are related to the number of executed iterations n by the expression n0,1 v in which v is the value cor indicated on screen.)

Then try other commands shown in the following table.

When some command does not work, try reseting the applet using
m, or/and clicking in a point inside the window.

z , Z

zoom in , zoom out


bifurcations (cnt=300)

m , M

Mandelbrot , Mandelbrot with/ Julia for clicked point

e , E

orbits (last points cnt=300, slow evolution cnt=50)


Julia (for clicked point in Mandelbrot)

t, T

trajectories (clearing cnt=300, accumulating cnt=50)


compute (inside area selected using mouse)


change number of iterations

1 a 7

some selected details in Mandelbrot set



change color variable


zn+1= zn3+c, zn+1= zn4+c ,..., zn+1= zn8+c


change sign


zn+1= zn3+zn2+c, ...., zn+1= zn8+zn2+c

s , ESC

show with successive zooms (centered in point clicked with mouse), stop the show


color palette, random colors, default colors, alternative colors, black&white


limit/don't limit number of points to 50, in orbits drawn after clicked point

Detailed information about the commands

If you prefer to use a 771 by 539 applet window, click here
(slower computations, no detailed information)

Higher order Mandelbrot sets

F1 to F6 - zn+1= zn3+c , zn+1= zn4+c , zn+1= zn5+c , zn+1= zn6+c , zn+1= zn7+c , zn+1= zn8+c.
F7 to F12 - zn+1= zn3+zn2+c , zn+1= zn4+zn2+c , zn+1= zn5+zn2+c , zn+1= zn6+zn2+c , zn+1= zn7+zn2+c , zn+1= zn8+zn2+c.

Zoom show

After choosing a point, if you press
s , you start zoom ins centered in that point. To stop zooming, press ESC. If, during the zoom you press u, i, o or p , you can see the different coloring possibilities. (Other keyboard keys also work during zooming).

Julia Sets

If you press
M (Mandelbrot with/ Julia), you will see also a brief presentation of the Julia set for the (previously mouse) selected c. If you press m , you go back to the default mode.

If you press
j (after m and clicking), you will see the Julia set for the (previously mouse) selected c. Press m , to go back to the Mandelbrot set.

Orbits e trajectories

e - shows last 50 points of orbits for a series of initial complex points. A grid with spacing of 5 is used and only points corresponding to complex numbers with a modulus < 1,41 (i.e. a2+b2 < 2) are shown. Use a number of iterations (cnt -shown at right in window) greater than 300. (Use UP, DOWN to change number of iterations) NOTE: in the bottom right you can read «aguarde até ao fim», which stands for «wait until the end». In the end, you can read «FIM», which stands for «END» (in portuguese).

E - a more slow and detailed evolution of some of the points (grid spacing of 40). (Use a cnt=50, so that the iteration does not take too long). The initial point of each evolution is shown by the small line segments in the window border. Notice that for some points you have periodic cycles.

T - see evolution trajectories for a series of initial complex points (grid with spacing of 4, i.e., column and line values of 0,4,8, 12, etc.). (Use a cnt=50, so that the iteration does not take too long).

t - see evolution trajectories more clearly. After each line, screen is cleared. The numbers being tested are drawn in white (see the white horizontal line which goes down in the screen) the points obtained from them, up to selected cnt, are in yellow. (Use a cnt>300)

NOTE: For e and t, if you use a greater value for cnt (e.g., 700), it takes longer but you get drawings which are much more interesting.

Bifurcations in Mandelbrot map

b - The orbits computed from real values are composed of real points and their trajectories are easy to visualize because they all lie in the real axe. This command shows the orbit points for each real c value, projected in the vertical of each point, i.e., the real points are presented as if they were complex values (e.g., - 1 is shown as if it was - i ).


l - Clicking in a point in the Mandelbrot set - we see the evolution (orbits) resulting from 50 iterations using that point as c, and z0=0. This command allows the visualization of the evolution for the number of iterations selected in cnt. Press again to go back to normal mode.

S - In each iteration the sign is inverted, i.e., zn+1= (znN+..+c)* = Re {znN+..+c} - Im {znN+..+c} is used. The sets obtained are graphically very interesting. Press again to go back to normal mode.

Lorenz atractor - the butterfly effect in a strange atractor  

Fractal figures generated using L-systems 

Wall paper-errors due to finite precision

A fractal leaf and the Sierpinski triangle

If you liked, send me a messageto the address