绘制字段扩展的 3D 图

绘制字段扩展的 3D 图

有没有一个包可以做和 xymatrix 一样的事情,但是是 3D 的?我问这个问题是因为这是我最有经验的,但我也愿意学习其他的。

我的目标是绘制场扩展图,因此我必须用有理数的扩展来指示每个顶点。我将在下面留下一张图片,以更好地说明我正在尝试做的事情。

图表示例

提前致谢!

答案1

在此处输入图片描述

这很容易做到tikzcd

\documentclass[border=20]{standalone}
\usepackage{tikz-cd}
\begin{document}
    \begin{tikzcd}
        X_1\arrow[rr, "f_{12}"]\arrow[dr, "f_{13}"]\arrow[dd, "h_1", swap] & & X_2 \arrow[dr, "f_{24}"]\arrow[dd, "h_2", near end] & \\
        & X_3 \arrow[rr, "f_{34}", crossing over, near start] & & X_4 \arrow[dd, "h_4"] \\
        Y_1 \arrow[rr, "g_{12}", near end]\arrow[dr, "g_{13}"] & & Y_2\arrow[dr, "g_{24}"] & \\
        & Y_3\arrow[rr, "g_{34}"] \arrow[from=uu, "h_3", crossing over, near start, swap] & & Y_4.
    \end{tikzcd}
\end{document}

本质上这是一个节点矩阵(其中一些节点为空,& &中间没有任何内容)。然后使用\arrow命令添加箭头。它有许多可选参数,这里使用的参数是

  • rr,,dddr代表“右右”、“下下”、“右下”等。请注意,需要两个方向,因为每个标记节点之间都有一个空白节点。
  • 一些标签""
  • swap将标签放在箭头的另一侧
  • near start或者near end将标签放在箭头的起点或终点附近(默认是中间)
  • crossing over这个箭头在另一个箭头的上方交叉,请注意,箭头的绘制顺序对于这个箭头来说很重要,这就是为什么我们需要下一个命令
  • from=默认从当前节点沿给定方向绘制箭头。这会从方向向当前节点绘制箭头(即反向)。这很有用,因为它允许您在顺序很重要时延迟/向前绘制箭头。

相关内容