TikZ 图形绘制:边选项与链组冲突

TikZ 图形绘制:边选项与链组冲突

我以为下面两张图是一样的。

\documentclass[tikz]{standalone}
\usetikzlibrary{graphs}
\begin{document}
    \tikz\graph{1--{2,3}};
    \tikz\graph{1--[]{2,3}};
\end{document}

但它们的结果

应该是这样吗?我发现这个是因为我需要插入一些边缘选项,例如[red,thick]。但通常我会创建空节点,\tikz\graph{/--[foobar]{/,/}};使其变短。还有其他选择吗?

答案1

这不是设置边缘样式的语法。下面是如何执行此操作的示例:

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{graphs}
\begin{document}
    \tikz\graph{1--{2,3}};
    \tikz\graph{1--{2[>green!75!black], 3[>{thick,red}]}};
\end{document}

在此处输入图片描述

答案2

Kpym 的回答不正确。确实存在这样的用于设置边样式的语法,如§19.6.1 两个组之间所有边的选项(第 276 页)

当您在图形规范中的某个位置写入时,这通常会导致在 之前的链组中的节点和 之后的链组中的节点… ->[options] …之间创建一个或多个边。将应用于所有这些节点。->options

OP 只是在 之后]和 之前缺少一个空格{。这是一个有效示例:

\documentclass[tikz]{standalone}
\usetikzlibrary{graphs}
\begin{document}
    \tikz\graph{1--{2,3}};
    \tikz\graph{1--[] {2,3}}; % ← space added between ] and {

    % This also works:
    \tikz\graph{1--[]{2,3} }; % ← space added between } and }
\end{document}

相关内容