from sympy import Tuple, solve, arg
n = symbols("n")
expr = z**3 - 1
eq = expr - n * pi
sol = Tuple(*solve(eq, z))
points = []
n_lim = 5
for n_val in range(-n_lim, n_lim+1):
    points.extend(sol.subs(n, n_val))
r = [complex(abs(p)).real for p in points]
t = [arg(p) for p in points]
p1 = graphics(
    complex_points(points),
    aspect="equal", title="Cartesian grid", show=False
)
p2 = graphics(
    list_2d(t, r, is_point=True),
    x_ticks_formatter=multiples_of_pi_over_3(),
    title="Polar grid", ylim=(0, 3),
    aspect="equal", polar_axis=True, show=False
)
plotgrid(p1, p2, nr=1)       # doctest: +SKIP
