抱歉,问这样直接的问题,但是:您怎样才能做到这一点?
它的用法复杂吗align
?它真的是和方程式(数学模式)吗?
答案1
如果您使用 TikZ 绘制图表,则可以将其tikzpicture
放入equation
环境中。我相信同样的事情也适用于 xy。
我猜你真正想问的是如何绘制交换图。这是使用 TikZ 的一种方法。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{matrix}
\begin{document}
\begin{equation}
\begin{tikzpicture}[baseline=-0.8ex]
\matrix (m) [
matrix of math nodes,
row sep=2em,
column sep=4em,
text height=1.5ex, text depth=0.25ex
] {
x & x' \\
\hat x & \hat x' \\
};
\path[->]
(m-1-1) edge node[above] {$L$} (m-1-2)
(m-2-1) edge node[left] {$T$} (m-1-1)
(m-2-2) edge node[right] {$T$} (m-1-2)
(m-2-1) edge node[below] {$R$} (m-2-2);
\end{tikzpicture}
\end{equation}
\end{document}
让我们稍微分析一下:
- 要使用 TikZ 绘制图片,我们需要使用
tikzpicture
环境。此环境可以在数学模式下毫无问题地使用。 - 在图中我们首先用交换图的顶点定义一个矩阵(使用
\matrix
)。然后我们画出箭头并标记它们(使用\path
)。 - 对于矩阵,我们给出一个名称(
m
)和几个选项(方括号中的部分)。然后我们像在该名称的数学命令中一样定义矩阵(除了最后一行以 结束很重要\\
)。选项执行以下操作:matrix of math nodes
告诉 TikZ 在数学模式下解释实际矩阵中的代码(如果没有它,TikZ 将希望在矩阵中获取绘图命令)。row sep
并column sep
设置行/列之间的间距。text height
并text depth
设置该值。这对于 TikZ 找出每个单元格的中心位置很有用(否则它只会将它们置于表观中心,而 的中心位置低于 的中心x
)x'
。
- 通常人们使用
\draw
TikZ 来绘制东西,但在这种情况下\path
效果更好。- 告诉
->
TikZ 绘制箭头而不是普通线条。 (m-i-j)
访问矩阵的单元(像数学中那样标记)。- 用 插入一行
(start position) edge (end position)
。 - 我们想给箭头添加标签。为此,我们使用语法
node
。它在边的中间(或上方、下方……,取决于选项)插入一个节点(=标签),其中的文本用花括号括起来。
- 告诉
- 每个绘图命令必须以分号结束
;
。 默认情况下,TeX 将图像放在基线之上。我们不希望这样,因为这样的话,方程计数器“(1)”就不会居中。我们使用该
baseline
选项来告诉 TikZ 周围文本的基线相对于其内部坐标系的位置。由于我们没有指定矩阵的位置,它的中心在 TikZ 的内部坐标系中位于 (0,0)。因此baseline=0
将矩阵置于文本/方程基线的中心附近。这比较好,但仍然不是我们想要的,因为我们希望中心位于中心线上,即在 1 的中间高度上。因此我们将其向上移动 0.8ex,这相当于告诉 TikZ 基线应该在 0 以下 0.8ex 处。正如 egreg 指出的那样,对于居中,也可以使用
gathered
fromamsmath
而不是基线偏移。
有关 TikZ 的更多信息,请参阅它的手册。关于使用 TikZ 制作交换图的一个很好的介绍是”使用 TikZ 的交换图”。
答案2
使用 Xy-pic 很容易
\usepackage{amsmath}
\usepackage[all,cmtip]{xypic}
\xyoption{pdf} % for pdflatex
...
\begin{document}
...
\begin{equation}\label{commdiag}
\begin{gathered}
\xymatrix{
\mathbf{x} \ar[r]^{\mathbf{L}} & \mathbf{x}' \\
\hat{\mathbf{x}} \ar[r]_{\mathbf{R}} \ar[u]^{\mathbf{T}} &
\hat{\mathbf{x}}' \ar[u]_{\mathbf{T}}
}
\end{gathered}
\end{equation}
环境gathered
用于正确居中方程编号。如果您确实需要更长的水平箭头,请编写类似 的内容\xymatrix@C+12pt
来代替\xymatrix
(+12pt
是额外的长度)。
答案3
我想和大家分享一个用eplain制作的交换图:
\input eplain
\noindent Such a transformation can be represented by the commuting diagram
$$
\varrowlength=1cm % Vertical arrow length
\harrowlength=3cm % Horizontal arrow length
\commdiag{
x & \mapright^L & x' \cr
\mapup\lft T & & \mapup\rt T \cr
\hat x & \mapright_R & \hat x' \cr
}
\eqno(1.6.4)
$$
It must be pointed out that the concept of conjucation or matrices is of \dots
\bye