妇女权利委员会:
\documentclass{standalone}
%======================================
\usepackage{tikz}
\usetikzlibrary{graphdrawing}
\usetikzlibrary{arrows}
\usetikzlibrary{graphs}
\usegdlibrary{force, layered, trees}
%======================================
\begin{document}
\tikz
\graph [spring layout, nodes = draw]
{
a/"dispersive\newline collision";
b/"non-dispersive\newline collision";
a -> b
};
\end{document}
输出:
问题:
如上所示,该\newline
命令没有任何作用。尝试使用\\
而不是\newline
,就像 pgfmanual 在某些示例中所做的那样(参见第 386 页)会产生同样的效果。为什么?我该怎么做才能让单词出现在单独的“行”上?
答案1
默认情况下,节点设置在不允许换行的框中。向节点添加align
ment(例如align=center
)或会将其设置在段落框中,其中可能会出现换行。出于某种原因,仍然不起作用(不知道为什么),但确实可以。text width
\newline
\\
\documentclass{standalone}
%======================================
\usepackage{tikz}
\usetikzlibrary{graphdrawing}
\usetikzlibrary{arrows}
\usetikzlibrary{graphs}
\usegdlibrary{force, layered, trees}
%======================================
\begin{document}
%simpler example
\begin{tikzpicture}
\node {a\\b};
\node [align=center] at (1,0) {a\\b};
\end{tikzpicture}
% your code, modified
\tikz
\graph [spring layout, nodes = {draw,align=center}]
{
a/"dispersive\\ collision";
b/"non-dispersive\\ collision";
a -> b
};
\end{document}