The figures in this document are produced with the sagemath code below. Full resolution versions are obtained clicking on the images.
The natural generalization of the Farey fractions for the Gaussian integers is \[\mathcal{G}_N = \Big\{ \frac{z_1}{z_2}\,:\, z_1,z_2\in\mathbb{Z}[i]\text{ coprime and } |z_2|^2< N \Big\}\cap\big\{\Re(z),\Im(z)\in [0,1]\big\}.\]
As in the standard case, the distance of two fractions \(A/Q,\,A'/Q'\in\mathcal{G}_N\) is at least \(|QQ'|^{-1}< (N|Q|)^{-1}\). Let us consider each \(A/Q\in\mathcal{G}_N\) as the center of a circle of radius \(r(N|Q|)^{-1}\). Then we can assure that they do not overlap when \(r\le 1/2\).
This is corresponding figure for \(N=120\) and \(r=1/2\):
\(\text{cmap}=\texttt{gray},\) \(N=120,\) \(r=1/2\) |
In the caption, \(\text{cmap}=\texttt{gray}\) indicates that we are using the colormap gray assigning to the radius values colors that go from black to white. So, smaller norms of the denominators give bigger darker circles.
These are other examples. In the first figure the colormap is complementary to gray and \(r\) has been taken smaller, hence the circles seem more sparse. In the second figure, \(r\) has exceeded the limit value \(1/2\) and some of the circles overlap.
\(\text{cmap}=\texttt{binary},\) \(N=120,\) \(r=1/4\) | \(\text{cmap}=\texttt{Oranges},\) \(N=120,\) \(r=3/4\) |
The standard colormaps have 256 values indexed from 0 to 255. So, \(N\) around 255 is a kind of limit if we want to distinguish with different colors all the different radii (the truth is more complicated because the radii do not vary linearly). These are two colorfull examples with \(N=255\).
\(\text{cmap}=\texttt{hsv},\) \(N=255,\) \(r=1/2\) | \(\text{cmap}=\texttt{seismic},\) \(N=255,\) \(r=1/3\) |
from sage.plot.colors import get_cmap |