
Добавление математического выражения в качестве метки внутри узла работает нормально:
\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}