The term "L-system" is coined after biologist Aristid Lindenmayer, who proposed a formalism to model the growth of plants. Such a system develops a string of symbols from a simple starting point (the axiom) to an increasingly complex structure.

Interpreting this string as a list of commands for drawing in turtle graphics style, one can generate a rich variety of natural-looking fractal geometry. A host of variations and extensions to the originally simple idea exist, aiming at ever more natural and complex plant shapes.

The applet on this page demonstrates how these systems evolve over the course of several iterations. So far, you can only choose from a fixed set of rules, but maybe I'll build in some on-line rule creation when I get around to it. This L-system variant and the examples are largely based on the chapter on fractals in Gary W. Flake's great book "The Computational Beauty of Nature". If you're really interested in the topic, the one book to read is of course "The Algorithmic Beauty of Plants" by Przemyslaw Prusinkiewicz and Aristid Lindenmayer.

L-System Applet

Your browser doesn't seem to have Java support. Get the latest Java Plug-in.


  • Choose a rule set from the combo box; you can examine the rule sets from the links at the bottom of the page.
  • The "1 iteration" button evolves the system by one application of the rules, up to a maximum of 10 generations.
  • The "Reset" button re-initializes the system to the axiom.
  • The "Angle" edit field allows you to re-define the turning angle of the turtle. This can change the appearance of the shape quite dramatically.
  • "Iterations" shows how many times the rules have been applied. This is also editable, so you can directly select a generation instead of pressing "1 iteration" multiple times.
  • "Length ratio" defines how forward movement scales with each generation (only applies to the '|' symbol in a rule).

Click on the following links to view the example data files: