我需要绘制一些具有 $y=f(x)$ 形式的 3D 曲面。现在的问题是pgfplots
采用形式为 $z=f(x,y)$ 的函数,这里我处理具有自由 $z$ 坐标的曲面。例如,考虑 $y=\cos x$;我的代码是
\begin{tikzpicture}
\begin{axis}[
mesh/interior colormap name=black,
colormap name=purple,
xlabel=$x$,zlabel=$z$,ylabel=$y$] \addplot3 [samples=20,domain=.1:8,surf,
shader=faceted] {cos((x) r)};
\end{axis} \end{tikzpicture}
这是错误的!有办法绘制这样的曲面吗pgfplots
?
答案1
我真的不知道如何解释你的问题,但你说这z
是免费的,这意味着
\documentclass[tikz,border=3.14mm]{standalone}
\usepackage{pgfplots}
\pgfplotsset{compat=1.16}
\pgfplotsset{
colormap={blackwhite}{gray(0cm)=(0); gray(1cm)=(1)}
}
\pgfplotsset{
colormap={cool}{rgb255(0cm)=(255,255,255); rgb255(1cm)=(0,128,255); rgb255(2cm)=(255,0,255)}
}
\begin{document}
\begin{tikzpicture}
\begin{axis}[
mesh/interior colormap name=blackwhite,
colormap name=cool,samples=180,
xlabel=$x$,zlabel=$z$,ylabel=$y$] \addplot3 [samples=20,domain=.1:8,surf,
shader=faceted] ({x},{cos((x) r)},{y});
\end{axis}
\end{tikzpicture}
\end{document}