So I'm trying to calculate the fractal dimension of the perimeter of the mandelbrot set using the box-counting or Minkowski–Bouligand definition of fractal dimension. According to this definition, my results should be greater than 2, but for some reason, I keep getting around 1.36 as my dimension value.

I was wondering if what I'm doing is incorrect, even though it seems to be the proper method.

Box side length 2, 45 boxes Box side length 2, 45 boxes

Box side length 1, 122 boxes Box side length 1, 122 boxes

Box side length 0.5, 314 boxes Box side length 0.5, 314 boxes

As far as I understand it, with the box side length increasing in size by 2x, the number of perimeter boxes should be divided by 2^d, where although d should be 2, I'm getting a value of about 1.36. Any help?

  • $\begingroup$ (1) I edited your post to include the images; this, I think, helps readability. Is there any particular reason that you edited out those images? (2) The box counting dimension takes a limit as the box size tends to zero. What happens if you use smaller boxes? Have you tried anything on the order of $10^{-5}$? $10^{-10}$? smaller? What are your results? $\endgroup$
    – Xander Henderson
    Commented Nov 25, 2019 at 19:30
  • $\begingroup$ (1) Sorry about the images, first time using this site and I just thought the images were too big so I cropped them a bit. Feel free to add them back. (2) I was trying to make the box size as small as possible, but currently, the way I'm getting these images is by just copy and pasting them in photoshop so they fit around the set. Is there a software or something similar which you think could make this easier? When considering the pixels in the image to be the boxes (Side length ≈ 0.01) I do get a value tending much closer to 2 (2.127) so that is helpful $\endgroup$ Commented Nov 25, 2019 at 19:40
  • $\begingroup$ Your boundary seems to be constructed by edge-detection of binary in/out image - this misses a lot of the boundary, namely the "filaments" that are too thin for that process. Perhaps try distance estimation rendering. $\endgroup$
    – Claude
    Commented Nov 25, 2019 at 22:35
  • $\begingroup$ I created my image through a simple Java program assigning each pixel a coordinate and plotting it from there. As an amateur programmer - how would I go about creating that kind of render? $\endgroup$ Commented Nov 25, 2019 at 23:31
  • 2
    $\begingroup$ Note that it has been proved rigorously that the Hausdorff dimension (and therefore the box dimension) of the boundary of the Mandelbrot set is 2 $\endgroup$
    – Albert
    Commented Jan 13, 2020 at 10:46

2 Answers 2


Your measure is correct!

For the boundary of the standard Mandelbrot set (https://github.com/sjhalayka/random_images/raw/master/mandel1.tga), I get a box-counting dimension of $d \approx 1.3$. You can save the Mandelbrot sets of arbitrary size to TGA file using my code (https://github.com/sjhalayka/mandelbrot_set_to_tga)

I go about obtaining this measure of $d \approx 1.3$ by using Marching Squares. Any time a marched square generates geometric primitives (line segments), the box count is incremented by 1 -- see https://github.com/sjhalayka/ms_curvature

It's all pretty straightforward, like you point out: you're counting the number of boxes that are needed to cover the boundary, given an arbitrary step size.

Contrary to some comments, the Mandelbrot's boundary will never be of box-counting dimension $d = 2.0$. The only way for this maximum to occur is if the entire input 2-plane is in the set. It doesn't matter how small the step sizes are -- a 2-plane is obviously not the exact same thing as the Mandelbrot's boundary. What I mean is that a straight line is of dimension $d = 1$. A wavy line is of dimension $d \in (1, 2)$. So, no, the dimension should not be 2 or greater. Perhaps you were thinking of generating 3D Mandelbrot sets using Marching Cubes? A flat plane has dimension $d = 2$. A wavy surface is of dimension $d \in (2, 3)$. I discuss the usage of Marching Cubes in this paper: https://vixra.org/abs/1812.0423 -- I also discuss a new curvature-based dimension that uses the Marching Squares/Cubes/Hypercubes geometric primitive data as well.


Using my own box-counter (sig) software and a large (19200x10800) image rendered with interior and exterior distance estimation I get this table of box counts:

$\log_2 E$ $N(E)$ $\log_2 N(E)$
0 3228102
1 845624 19.689656797455456
2 230136 17.812127155343557
3 66178 16.014064071416254
4 20056
5 6432
6 2156
7 762
8 273
9 109
10 42
11 16
12 8
13 3
14 1
15 1

Linear regression of the first and third columns (over the range 1-3) in gnuplot gives:

> fit -D*x+k "boxes.dat" u 1:3 via D,k
Final set of parameters            Asymptotic Standard Error
=======================            ==========================
D               = 1.8378           +/- 0.02294      (1.248%)
k               = 21.5142          +/- 0.04956      (0.2303%)

which gives a box counting dimension estimate of $1.84$. However as Glougloubarbaki states in the comments, the dimension has been proven to be $2$. Using a larger image may give a higher box counting dimension estimate, as the log-log plot seems to be curving upwards towards the left:

logarithmic graph of N(E) against log_2(E)


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .