如何在节点外的标签中添加数学表达式?

如何在节点外的标签中添加数学表达式?

在节点内添加数学表达式作为标签可以正常工作:

\begin{figure}
\begin{tikzpicture}[]
    \node[circle, draw] (c1) [label=left: text] {};
    \node[block, draw, right = of c1] (e1) {$1*1=1$};  
    \draw[->] (c1) -- (e1);
\end{tikzpicture}
\end{figure}

但是,如果我想将数学表达式放在节点旁边(就像我对上面的“文本”标签所做的那样),它将无法编译:

\begin{figure}
\begin{tikzpicture}[]
    \node[circle, draw] (c1) [label=left: text] {};
    \node[block, draw, right = of c1] (e1) [label=right: $1*1=1$] {};  
    \draw[->] (c1) -- (e1);
\end{tikzpicture}
\end{figure}

关于如何让它发挥作用,我有什么想法吗?

答案1

将数学表达式代入{}以解决您的问题

解释

作为@Zarko 在他的评论中解释道问题不在于数学表达式本身,而在于符号=,因为这会导致错误地解析您的选项。在表达式周围tikz添加一层,将会被隐藏在 tikz 中。 {}=

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}

\begin{figure}
\begin{tikzpicture}[]
    \node[circle, draw] (c1) [label=left: text] {};
    \node[draw, right = of c1] (e1) [label=right: {$1*1=1$}] {};  
    \draw[->] (c1) -- (e1);
\end{tikzpicture}
\end{figure}



\end{document}

相关内容