在 TikZ 中更改坐标顺序

在 TikZ 中更改坐标顺序

我想改变 TikZ 中输入坐标的顺序。

在二维坐标中,它是 (x,y),即 (右/左,上/下)。只要我输入第三个坐标,TikZ 就会在末尾添加第三个坐标。然后是 (左/右,上/下,前/后) 是否可以将输入坐标的格式更改为
(前/后,左/右,上/下)?

\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{shapes, arrows, shadows,trees, decorations.markings, positioning, patterns, plotmarks, 
matrix,decorations.pathmorphing,backgrounds,fit,shapes.symbols,chains, 3D, calc}
\usepackage{kpfonts}

\begin{document}
    \begin{tikzpicture}[scale=4]
                \draw[->] (0,0,0) -- (1,0,0) node[above]{$x$};
                \draw[->] (0,0,0) -- (0,1,0) node[left]{$y$};
                \draw[->] (0,0,0) -- (0,0,1) node[left]{$z$};
    \end{tikzpicture}   

    \vspace{5cm}
    \begin{tikzpicture}[scale=4]
                \draw[->] (0,0,0) -- (1,0,0) node[above]{$y$};
                \draw[->] (0,0,0) -- (0,1,0) node[left]{$z$};
                \draw[->] (0,0,0) -- (0,0,1) node[left]{$x$};
    \end{tikzpicture}   

\end{document}

是否有人知道如何进行循环排列,以便第一个输入的坐标是 x 坐标,就像第二个例子中那样?

答案1

可以通过指定、和的向量来xyz配置坐标系。示例使用不同的坐标分量映射来定义样式:xy canvasxyzyzx

\documentclass{article}

\usepackage{tikz}

\tikzstyle{yzx} = [
  x={(-.385cm, -.385cm)},
  y={(1cm, 0cm)},
  z={(0cm, 1cm)},
]

\begin{document}
    \begin{tikzpicture}[scale=1.5]
        \draw[->] (0,0,0) -- (1,0,0) node[above]{$x$};
        \draw[->] (0,0,0) -- (0,1,0) node[left]{$y$};
        \draw[->] (0,0,0) -- (0,0,1) node[left]{$z$};
    \end{tikzpicture}

    \vspace{.5cm}
    \begin{tikzpicture}[yzx, scale=1.5]
        \draw[->] (0,0,0) -- (1,0,0) node[left]{$x$};
        \draw[->] (0,0,0) -- (0,1,0) node[above]{$y$};
        \draw[->] (0,0,0) -- (0,0,1) node[left]{$z$};
    \end{tikzpicture}
\end{document}

结果

相关内容