使用球坐标绘制三维曲线

使用球坐标绘制三维曲线

我正在尝试绘制该函数的一些纤维: 在此处输入图片描述

其中,球面的点在球面坐标系中显示为,\theta范围[0,2pi[为,南北极的坐标为和。以下是我尝试在 上绘制光纤:\phi[0,pi]N <-> (0,0)S <-> (pi,pi)pi/4

\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}   %no idea what this does%

\begin{document}
\begin{tikzpicture}
\begin{axis} [hide axis]
\addplot3[variable=t,mesh,domain=2*pi:5*pi/2] ({sin(deg(5*pi/(4*t)))*cos(deg(t))}, {sin(deg(5*pi/(4*t)))*sin(deg(t))}, {cos(deg(5*pi/(4*t)))});
\addplot3[variable=t,mesh,domain=5*pi/2:3*pi] ({sin(deg(5*pi/(4*(5*pi-t))))*cos(deg(t))}, {sin(deg(5*pi/(4*(5*pi-t))))*sin(deg(t))}, {cos(deg(5*pi/(4*(5*pi-t))))});
\addplot3[variable=t,mesh,domain=3*pi:7*pi/2] ({sin(deg(5*pi/(4*(t-pi))))*cos(deg(t))}, {sin(deg(5*pi/(4*(t-pi))))*sin(deg(t))}, {cos(deg(5*pi/(4*(t-pi))))});
\addplot3[variable=t,mesh,domain=7*pi/2:4*pi] ({sin(deg(5*pi/(4*(6*pi-t))))*cos(deg(t))}, {sin(deg(5*pi/(4*(6*pi-t))))*sin(deg(t))}, {cos(deg(5*pi/(4*(6*pi-t))))});
\end{axis}
\end{tikzpicture}
\end{document}

我必须改变域以\theta避免被 0 除。结果如下

在此处输入图片描述

但是,我想另外绘制球体,以便人们可以看到该曲线位于球体上,但我似乎无法做到这一点。任何帮助都将不胜感激。

相关内容