TikZ 和 PGFPlots:将 TikZ 3d 轴添加到 pgfplot 中

TikZ 和 PGFPlots:将 TikZ 3d 轴添加到 pgfplot 中
\documentclass[tikz]{standalone}
\usepackage{tikz-3dplot}
\usepackage{pgfplots}
\pgfplotsset{compat = 1.8}

\begin{document}
\tdplotsetmaincoords{60}{130}
\begin{tikzpicture}[tdplot_main_coords]
  \begin{axis}[
    samples = 1000,
    domain = -pi / 2:4 * pi,
    samples y = 0,                                                       
    no markers,
    axis lines = none
    ]
    \draw[-latex] (axis cs: 0, 0, 0) -- (axis cs: 3, 0, 0);
    \draw[-latex] (axis cs: 0, 0, 0) -- (axis cs: 0, 3, 0);
    \draw[-latex] (axis cs: 0, 0, 0) -- (axis cs: 0, 0, 5);
    \addplot3 ({cos(deg(x))}, {sin(deg(x))}, {.5 * x});
  \end{axis}
\end{tikzpicture}
\end{document}

在此处输入图片描述

我怎样才能将其tdplot_main_coords传递到pgfplots 中以便我的轴不至于完全疯狂?

答案1

似乎可以通过 , , 将tikz-3dplot角度\tdplotsetmaincoords{h}{v}转换为 的角度。对于您的情况,您需要。至少看起来是这样。pgfplotsview={H}{V}H=h+45V=v-90view={115}{20}

-latex关于为什么忽略箭头的评论:我认为这是因为 pgfplots 已激活剪辑。添加该选项clip=false可能会有所帮助(如果我错了,请纠正我)。

答案2

这是一个不使用 pgfplots 的替代解决方案

螺旋

\documentclass[tikz]{standalone}
\usepackage{tikz-3dplot}

\begin{document}

\tdplotsetmaincoords{60}{130}
\begin{tikzpicture}[tdplot_main_coords]
\draw[->] (0,0,0) -- (2,0,0) node[right] {x};
\draw[->] (0,0,0) -- (0,2,0) node[left] {y};
\draw[->] (0,0,0) -- (0,0,3) node[above] {z};
\draw[thick,blue] (1,0,0)
\foreach \a in {0,0.1,...,15.71}
{ -- ({cos(deg(\a))},{sin(deg(\a)},{.10*\a})
};
\end{tikzpicture}

\end{document}

相关内容