I'm not sure if this is appropriate for math.SE. But I figured that my problem is with understanding, and not with execution, so I thought it to be more appropriate for math.SE instead of tex.SE.
I would like to draw a sphere with some great circles on it, programmatically in TikZ. So I started out with two circles in the $xz$-plane, and in the $zy$-plane and some coordinate axes:
\begin{tikzpicture}[scale=2]
% coordinate axes
\draw[->] (-1.5, 0, 0) -- (1.5, 0, 0);
\draw[->] (0, -1.5, 0) -- (0, 1.5, 0);
\draw[->] (0, 0, -1.5) -- (0, 0, 1.5);
% the circles
<span class="math-container">\begin{scope}[canvas is xz plane at y = 0]
\draw (0,0) circle[radius=1];
\end{scope}
\begin{scope}[canvas is zy plane at x=0]
\draw (0,0) circle[radius=1];
\end{scope}
\end{tikzpicture}
This gives the following picture:
Then I thought if we rotate one the latitude circle, this should give the sphere with more latitudes, right? The following code does exactly this
\foreach \t in {120,125,...,285} {
\begin{scope}[
% draw on a rotated plane
plane x = {(({sin(\t)},0,cos(\t))},
plane y = {(0,1,0)},
canvas is plane
]
\draw (0,0) circle[radius=1];
\end{scope}
}
Adding this produces the following picture.
I don't understand why the outline is not perfectly round. What's going on here? Is it because we are not doing dealing properly with perspective? Or did I miss something else?

