让 tikz 图片有一个方程式编号

让 tikz 图片有一个方程式编号

我制作了很多交换图,并试图从 amcd、图表等切换到 Tikz。我经常需要在文本中引用这些图表,并且宁愿将它们作为方程式(即带有方程式编号)而不是图形。我曾尝试将其放在方程式环境中,但它既不能使图表居中(因为 ma)

答案1

\开始{方程}
\begin{tikzpicture}[baseline=(当前边界框.中心)]
......
\结束{tikzpicture}
\end{方程}

从 Mtikz.pdf 复制。

答案2

只需将 TikZ 图片放入一个框中,例如使用 \text{}(这是一个 AMS 命令)。

如果您不使用 AMS,您也可以使用 \hbox(这是一个普通的 TeX 命令)。

无需额外软件包即可编译的示例:

\开始{方程}
\hbox{\tikz\draw[draw=black,fill=red] (0,0) 圆圈 (5pt);}
\label{等式:测试}
\end{方程}

\不缩进
在(\ref{eq:test})中,我们看到一张 TikZ 图片。\dotfill

基督教

答案3

如果你的 Tikz 图像位于standalone文件中,墨菲斯托的答案不幸的是,由于基线修改不会延续到主文档,因此将不起作用。

另一个选择是将要在这种情况下,工作是将 Tikz 图像包装在amsmathaligned环境。

\begin{equation}
\begin{aligned}
    \includestandalone{<tikzimage>}
\end{aligned}
\end{equation}

如果经常使用(正如 OP 所述),则应考虑将此构造包装在自定义环境中。

\newenvironment{alignedeqn}
    {\begin{equation}\begin{aligned}}
    {\end{aligned}\end{equation}\ignorespacesafterend}

答案4

要将方程编号放在顶部或底部(默认),只需使用以下命令:

\begin{equation}
\begin{tikzpicture}[baseline=(current  bounding  box.north)]
....
\end{tikzpicture}
\end{equation}

或者

\begin{equation}
\begin{tikzpicture}[baseline=(current  bounding  box.south)]
....
\end{tikzpicture}
\end{equation}

这是默认设置。

相关内容