Aptus v3

Aptus is a Mandelbrot set viewer and renderer. It is written in Python with a computation engine in C for speed.

A portion of the Mandelbrot set

Getting Aptus


Aptus requires Python 3.9 or greater.

Use pip to install Aptus. The web interface requires the “web” extra:

python3.9 -m pip install "aptus[web]"


The source is available on GitHub if you prefer direct access to the code, including recent changes.

Using Aptus

There are two ways to use Aptus: a browser-based explorer, and a command line renderer. There is also an older GUI which doesn’t work as well as it used to, but has more features than the browser interface. The browser and GUI let you zoom in and out, and change the color palette to find an image you like. The command line renderer produces higher-quality images.

Web interface

To launch the web interface, use the “aptusweb” command. It starts a local web server on Open that URL in your browser, and you should see a Mandelbrot set.

Hitting the “?” key will bring up a help panel, but briefly, click to zoom in, shift-click to zoom out. Dragging will move the image around, and shift-dragging will select a new rectangle to view.

The “s” key will render a downloadable image with super-sampling for higher quality.

Parameter files

When saving an image as a .PNG file, Aptus also stores all its parameter information in a text block hidden in the image, so that the .PNG can be used directly as a parameter file for the command line renderer.

GUI usage

The GUI interface runs with the “aptusgui” command. Details of how to use it are on the older Aptus page.

Command line usage

The command line renderer is called “aptuscmd”. It will accept a number of switches or parameter files:

Usage: aptuscmd [options] [parameterfile]

Aptus renders Mandelbrot set images. Three flavors are available: aptusweb and
aptusgui for interactive exploration, and aptuscmd for high-quality rendering.

  -h, --help            show this help message and exit
  -a ANGLE, --angle=ANGLE
                        set the angle of rotation
  --center=RE,IM        set the center of the view
  -c, --continuous      use continuous coloring
  --diam=DIAM           set the diameter of the view
  -i ITER_LIMIT, --iterlimit=ITER_LIMIT
                        set the limit on the iteration count
  -o OUTFILE, --output=OUTFILE
                        set the output filename (aptuscmd only)
  --phase=PHASE         set the palette phase
  --pscale=SCALE        set the palette scale
  -s WIDxHGT, --size=WIDxHGT
                        set the pixel size of the image
  --super=S             set the supersample rate (aptuscmd only)

More samples

A portion of the Mandelbrot set
A portion of the Mandelbrot set

A portion of the Mandelbrot set
A portion of the Mandelbrot set


Add a comment:

Ignore this:
Leave this empty:
Name is required. Either email or web are required. Email won't be displayed and I won't spam you. Your web site won't be indexed by search engines.
Don't put anything here:
Leave this empty:
Comment text is Markdown.