({{, (RefLink[MandelbrotSetPlot, paclet:ref/MandelbrotSetPlot])[{(Subscript[z, min]),(Subscript[z, max])}]
plots the portion of the Mandelbrot set inside the rectangle with corners (Subscript[z, min]) and (Subscript[z, max]).}, {, (RefLink[MandelbrotSetPlot, paclet:ref/MandelbrotSetPlot])[]
plots the Mandelbrot set over a default rectangle.}})

OpenersNotesSection(Spacer1)Details and Options

The Mandelbrot set is the set of all complex numbers c for which the sequence (Subscript[z, n])=(Subscript[z, n-1]^2)+c does not diverge to infinity when starting with (Subscript[z, 0])=0.

The default rectangle for (RefLink[MandelbrotSetPlot, paclet:ref/MandelbrotSetPlot])[] has corners (Subscript[z, min])=-2-1.3` i and (Subscript[z, max])=0.6` +1.3` i.

(RefLink[MandelbrotSetPlot, paclet:ref/MandelbrotSetPlot]) produces a (RefLink[Graphics, paclet:ref/Graphics]) object containing a (RefLink[Raster, paclet:ref/Raster]) primitive.

(RefLink[MandelbrotSetPlot, paclet:ref/MandelbrotSetPlot])[] has the same options as (RefLink[Graphics, paclet:ref/Graphics]), with the following additions:

With (RefLink[MaxIterations, paclet:ref/MaxIterations])->n, where n is a positive integer, the function f(z)==(z^2)+c will be iterated at most n times to determine if the orbit of 0 ever exceeds 2.

With (RefLink[ColorFunction, paclet:ref/ColorFunction])->f, where f is a function, the argument of f is a real number in [0,1] proportional to the number of iterates, and f must return color directives, such as (RefLink[RGBColor, paclet:ref/RGBColor]) and (RefLink[Hue, paclet:ref/Hue]), or named colors, such as (RefLink[Red, paclet:ref/Red]) and (RefLink[Blue, paclet:ref/Blue]).

(RefLink[ColorFunction, paclet:ref/ColorFunction])->"name" is equivalent to (RefLink[ColorFunction, paclet:ref/ColorFunction])->((RefLink[If, paclet:ref/If])[#==1,(RefLink[Black, paclet:ref/Black]),(RefLink[ColorData, paclet:ref/ColorData])["name"][#]]&).

The list of possible color function names is given by (RefLink[ColorData, paclet:ref/ColorData])["Gradients"].

OpenersPrimaryExamplesSection(Spacer1)Examples  (16)

OpenersExampleSection0(Spacer1)Basic Examples  (3)

Show the whole Mandelbrot set:

MandelbrotSetPlot[]

Zoom in and change the color:

MandelbrotSetPlot[{-0.65+0.47I,-0.4+0.72I},MaxIterations->200,ColorFunction->"RedBlueTones"]

Show a legend of the number of iterations:

MandelbrotSetPlot[{-0.65+0.47I,-0.4+0.72I},PlotLegends->Automatic]

OpenersExampleSection1(Spacer1)Options  (9)

OpenersExampleSubsection0(Spacer1)ColorFunction  (5)

Use a built-in color function to color by a scaled number of iterates:

MandelbrotSetPlot[ColorFunction->Hue]

Modify a built-in color function:

MandelbrotSetPlot[ColorFunction->(If[#3==1,Blue,GrayLevel[5#3]]&)]

Use a named color gradient:

MandelbrotSetPlot[ColorFunction->"GreenPinkTones"]

Zoom in to see more detail and colors:

MandelbrotSetPlot[{0.2+0.45I,0.4+0.65I},ColorFunction->"GreenPinkTones"]

Write a custom color function:

MandelbrotSetPlot[ColorFunction -> (If[#1==1,Black,RGBColor[(((1-#3))^2),(((1-#3))^3),1-#3]]&)]

Color all points that escape in less than 10 iterations:

MandelbrotSetPlot[MaxIterations->10,ColorFunction->(If[#3>9/10,Black,Blue]&)]

OpenersExampleSubsection1(Spacer1)EscapeRadius  (1)

Increasing the escape radius can smooth the transitions between colors:

{MandelbrotSetPlot[EscapeRadius->10000],MandelbrotSetPlot[]}

OpenersExampleSubsection2(Spacer1)ImageResolution  (1)

Increase (RefLink[ImageResolution, paclet:ref/ImageResolution]) for finer plots:

Table[MandelbrotSetPlot[ImageResolution->ir],{ir,50,300,50}]

OpenersExampleSubsection3(Spacer1)MaxIterations  (1)

Increase (RefLink[MaxIterations, paclet:ref/MaxIterations]) to improve quality when zooming in:

{MandelbrotSetPlot[{-0.743+0.175I,-0.723+0.195I}],MandelbrotSetPlot[{-0.743+0.175I,-0.723+0.195I},
MaxIterations->800]}

OpenersExampleSubsection4(Spacer1)PlotTheme  (1)

Use a theme with simple ticks and a bright color scheme:

MandelbrotSetPlot[PlotTheme->"Marketing"]

Change the color scheme:

MandelbrotSetPlot[PlotTheme->"Marketing",ColorFunction->ColorData["PastelColorGradient"]]

OpenersExampleSection2(Spacer1)Properties & Relations  (3)

Points in the Mandelbrot set determine quadratic Julia sets:

c=-0.123+0.745I;
{MandelbrotSetPlot[Epilog ->{Red,PointSize[Medium],Point[{Re[c],Im[c]}]}],
JuliaSetPlot[c]}

Use (RefLink[MandelbrotSetMemberQ, paclet:ref/MandelbrotSetMemberQ]) to determine whether a point is in the Mandelbrot set:

MandelbrotSetPlot[Epilog->{Red,PointSize[Medium],Point[{-0.123,0.745}]}]

MandelbrotSetMemberQ[-0.123+0.745I]

(RefLink[MandelbrotSetIterationCount, paclet:ref/MandelbrotSetIterationCount]) gives the number of iterations used to determine if a point is not in the Mandelbrot set:

MandelbrotSetPlot[Epilog->{Red,PointSize[Medium],Point[{-0.123,0.945}]}]

MandelbrotSetIterationCount[-0.123+0.945I,MaxIterations->100]

OpenersExampleSection3(Spacer1)Neat Examples  (1)

Turn the complement of the Mandelbrot set into a checkerboard:

MandelbrotSetPlot[EscapeRadius->10,ColorFunction->(If[#3==1,Blue,If[Im[#5]>=0,Red,Green]]&)]

({{DocumentationFooterIconsRelatedFunction.png, ({{See Also}, {(RefLink[JuliaSetPlot, paclet:ref/JuliaSetPlot])  ▪  (RefLink[MandelbrotSetIterationCount, paclet:ref/MandelbrotSetIterationCount])  ▪  (RefLink[MandelbrotSetMemberQ, paclet:ref/MandelbrotSetMemberQ])  ▪  (RefLink[MandelbrotSetBoettcher, paclet:ref/MandelbrotSetBoettcher])  ▪  (RefLink[ArrayPlot, paclet:ref/ArrayPlot])  ▪  (RefLink[DensityPlot, paclet:ref/DensityPlot])  ▪  (RefLink[ContourPlot, paclet:ref/ContourPlot])}})}})

({{DocumentationFooterIconsRelatedGuide.png, ({{Related Guides}, {▪(RefLinkPlain[Iterated Maps & Fractals, paclet:guide/IteratedMapsAndFractals])}, {▪(RefLinkPlain[Scientific Models, paclet:guide/ScientificModels])}})}})