如何通过 pgfplots 绘制 $y=f(x)$ 形式的 3d 曲面?

如何通过 pgfplots 绘制 $y=f(x)$ 形式的 3d 曲面?

我需要绘制一些具有 $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}

在此处输入图片描述

相关内容