在 '\graph[layered layout]' 环境中使用 mathmode

在 '\graph[layered layout]' 环境中使用 mathmode

我正在尝试使用 TikZ 和 pgf 来创建图形和图表。包中有命令\graph,它提供了一个简单但功能强大的界面来绘制图形和树。但是我似乎无法让数学模式与它一起工作。

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,graphs,graphdrawing}
\usegdlibrary{layered}
\begin{document}
    \tikz\graph[layered layout]{a -- b};
\end{document}

按照预期工作,生产

上述代码的编译输出 但是我想让它显示公式和希腊字母作为节点或边的标签,例如\deltax\cdot (1-x)。将上面的内容更改为

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,graphs,graphdrawing}
\usegdlibrary{layered}
\begin{document}
    \tikz\graph[layered layout]{$a$ -- b};
\end{document}

或使用$\delta$类似方法将在编译时崩溃。特别是上面的代码将崩溃

File ended while scanning use of \tikz@cc@parse@factor.

我尝试了一下,并尝试让它工作,但似乎找不到解决方案。我怎样才能将公式和希腊字母作为图中节点的名称?

答案1

带有数学运算的节点文本可以用引号给出:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc,graphs,graphdrawing}
\usegdlibrary{layered}
\begin{document}
    \tikz\graph[layered layout]{"$\delta a$" -- "$x\cdot(1-x)$"};
\end{document}

结果

相关内容