Off[General::spell1]; Off[Plot::plnr];
Clear[newtonMap]
newtonMap[f_,xMin_?NumberQ,xMax_?NumberQ,
yMin_?NumberQ,yMax_?NumberQ,
xGridPoints_?NumberQ,yGridPoints_?NumberQ] :=
Module[{
deltaX = N[(xMax-xMin)/xGridPoints],
deltaY = N[(yMax-yMin)/yGridPoints],
},
g[z_] = N[Simplify[z - f[z]/f'[z]]];
table = Table[FixedPoint[g, x + y I],
{y,yMin,yMax,deltaY}, {x,xMin,xMax,deltaX}];
tableMap = Map[rootPosition, table,{2}];
If[Max[tableMap] != 4, tableMap[[1,1]] = 4];
If[Min[tableMap] != 0, tableMap[[1,2]] = 0];
ListDensityPlot[tableMap, Mesh -> False,
FrameTicks ->
{
{{0, ToString[xMin]},
{xGridPoints/4, ToString[xMin + (xMax-xMin)/4]},
{xGridPoints/2, ToString[xMin + (xMax-xMin)/2]},
{3 xGridPoints/4, ToString[xMin + 3 (xMax-xMin)/4]},
{xGridPoints, ToString[xMax]}
},
{{0, ToString[yMin]},
{yGridPoints/4, ToString[yMin + (yMax-yMin)/4]},
{yGridPoints/2, ToString[yMin + (yMax-yMin)/2]},
{3 yGridPoints/4, ToString[yMin + 3 (yMax-yMin)/4]},
{yGridPoints, ToString[yMax]}
}
},
ColorFunction -> colorMap]
]Up to Newton's Method