Drawing a sequence of circles
Graphics[
{r = Length[Divisors@#]/2;
ColorData["Rainbow"][(r - 1)/7],
Circle[{#, 0}, r]} & /@
Range[150],
ImageSize -> 504]
You can get the radii using the built-in function DivisorSigma
directly:
n = 150;
radii = DivisorSigma[0, Range @ n]/2;
Coloring the circles based on radius:
Graphics[MapThread[{Thick, ColorData[{"Rainbow", {0, Max@radii}}]@#2, Circle[{#, 0}, #2]} &,
{Range @ n, radii}]]
Coloring the circles based on the horizontal coordinate of the center:
Graphics[ MapThread[{Thick, ColorData[{"Rainbow", {0, n}}]@#, Circle[{#, 0}, #2]} &,
{Range @ n, radii}]]