我正在学习如何使用 TikZ,可能有点超前了,但我想创建一个典型的流形如何映射到 R^d 的图示:显示一个曲面,在点 p 周围有一个邻域 U,从 U 到 R^d 的坐标映射显示了一个笛卡尔坐标网格和 U 的图像。我希望我的解释有意义。我可以看到类似的操作可以在 TikZ 中完成,但我发现的例子比我想要的更复杂。有没有一种相当简单易行的方法来实现我想要的?
答案1
当我找到答案时,我答应过在这里发布一个答案,因此这里是:
\documentclass{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.12}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
declare function={
f(\x,\y)=10-(\x^2+\y^2);
},
declare function={
c_x(\t)=cos(\t)+1;
},
declare function={
c_y(\t)=sin(\t)-1;
},
declare function={
c_z(\t)=f(c_x(\t),c_y(\t));
},
]
\addplot3[surf,domain=-2:2,domain y=-2:2,]{f(x,y)};
\addplot3[black,opacity=1.0,variable=t,domain=0:360] ({c_x(t)},{c_y(t)},{c_z(t)});
\end{axis}
\end{tikzpicture}
\end{document}
也许不是最引人注目的美丽配色方案,但它以简单的形式展示了我想要得到的东西:一个围绕一个点的开放邻域的流形的插图。
它仍然需要点,圆圈应该不太规则并且在它周围有一条虚线,应该有箭头说明坐标图等等,但我认为这是困难的部分。